First of all I am very happy to see some improvements as far as SEO is concerned with layered navigation. When you activate a filter and then deactivate it (by pressing the little X next to “Shopping by"), you actually get to the URL you were on originally instead of a new URL (causing duplicate content issue).
However - I still see a big problem as far as categories are concerned in Layered Navigation. It is understandable that not every possible option can have pretty URLs with Layered Navigation, but for Categories it is highly critical.
I have the following category structure:
- Clothing
---> Jackets
---> Dresses
Is Anchor is activated for Clothing category so therefore the Layered Navigation is activated. However, if you are in the Clothing category, and you choose the Jackets sub-category in the left side filters, you are sent to /clothing?cat=4 instead of /clothing/jackets.
In addition, the page you are sent to does NOT reflect the category that has been chosen. The <title> and <h2> for the page is still just “Clothing”. The only place “Jackets” are mentioned are in the “Currently shopping by” box. This is far from sufficient as to telling the spiders (as well as other clients, such as screen readers) what this page is about. This is insanely critical. Every SEO knows that using the semantic elements available to its highest purpose is very important as for being spidered well.
This also causes issues for example for the mentioned screen readers. Think of a blind person clicking “Clothing” and then “Jackets”. When he/she arrives at the Jackets page, the screen reader will say “Clothing”. No matter what filters are chosen on the left side, the <title> and <h2> of the page will be “Clothing”.
If I deactivate “Is Anchor” for the Clothing category and choose the same path, I will get sent to a page /clothing/jackets, and the page will have a <title> and <h2> that reflects the actual category. The title is “Jackets - Clothing - My store view name”, which is incredibly much better than the mentioned alternative.
For me the conclusion is that layered navigation is broken and can not be used. It wil cause spiders to index thousands of URLs that will have IDENTICAL <title> and <h2>. Search engines will have no way to tell the URLs a part, and that causes a massive reduction in chance of being able to rank high for words like “Clothing”, “Jackets”, and so forth..
Like I said, I understand that for all possible filters in layered navigation, it is hard to make pretty URLs and <title> tags. But there should be some exceptions, and the Category attribute is DEFINETELY one of those exceptions. Another one is “Designer/Manufacturer/Brand”. With the current setup, it is impossible to rank for your selected brands/designers if you use layered navigation. When creating an attribute set there might be some extra configuration to enable it for pretty URLs and also included in the <title> and <h2> tags.
Hopefully this will be addressed soon as it makes layered navigation completely useless.
This is a bump as there is no replies yet. Any other people comments on this issue, and please, any core developer that can say his or hers opinion about it??
I agree there are still issues with layered navigation and SEO
But there are options
1) No follow links on layered navigation
2) Block the search engines from spidering urls that are created within the layered navigation - via robots.txt
3) Remove layered navigation and place a static menu in your template
Nofollow-links breaks the feature completely, as neither categories nor designers etc will be indexed. Same with robots.txt.
The static option also doesn’t scale at all, unless you want to make your own logic for displaying links. You should always see subcategories as well as other stuff in the left side, so a static template isn’t good for much.
Nofollow-links breaks the feature completely, as neither categories nor designers etc will be indexed. Same with robots.txt.
Nofollow does not break the feature at all, it just stops the search engine spiders following the links. Just provide another set of links for the spiders to follow -e.g. static navigation in your template, set of footer links or header links, or links in the page copy or whatever.
Jone - 02 August 2008 02:04 PM
The static option also doesn’t scale at all, unless you want to make your own logic for displaying links. You should always see subcategories as well as other stuff in the left side, so a static template isn’t good for much.
I agree static does not scale well. BUT you can create a static navigation in your template that show categories AND sub categories.
I’d like to comment as well that this is a serious issue for us as well. We are using a static top nav because we have lots of content pages to point to in the CMS and we are using the layered navigation feature as the only option to navigate our products in our shopping cart.
The biggest issue being SEO and usability. THe layered navigation does not take you to the category and sub category pages as was before mentioned. Not only is this an issue for usability as was previous mentioned but also presents a problem for displaying static blocks and category descriptions in all the sub categories.
At this point we are looking to create a static menu and not using the layered navigation because of these issues.
At the very least the layered navigation should take you to the default category and sub category pages.
I tried looking at creating url rewrites in the admin > catalog > url rewrite management but it doesn’t appear that the custom url rewrite will work to rewrite the layered navigation url to point to the subcategory pages. Any one else have success trying this method? I’m having trouble understanding what to put in the ID path to get this to work.
The biggest issue being SEO and usability. THe layered navigation does not take you to the category and sub category pages as was before mentioned. Not only is this an issue for usability as was previous mentioned but also presents a problem for displaying static blocks and category descriptions in all the sub categories.
The layered navigation is not designed to take you to the categories, it is designed to eneable different views of the categories - i.e. by price, manufacturer or whatever.
DDMAN - 05 August 2008 12:28 PM
At this point we are looking to create a static menu and not using the layered navigation because of these issues.
I agree static is the best way at the moment - we have added a static menu in on the left hand side of the page, in addition to the layered navigation, and placed the nofollow attribute on all of the layered navigation links.
DDMAN - 05 August 2008 12:28 PM
At the very least the layered navigation should take you to the default category and sub category pages.
I don’t think layered navigation is designed to do this - it is designed to give the user various options for breaking down the categories into variations that may be helpful to them - e.g. price ranges, colours, manufacturers etc
DDMAN - 05 August 2008 12:28 PM
I tried looking at creating url rewrites in the admin > catalog > url rewrite management but it doesn’t appear that the custom url rewrite will work to rewrite the layered navigation url to point to the subcategory pages. Any one else have success trying this method? I’m having trouble understanding what to put in the ID path to get this to work.
Thanks
I don’t think this will work (rewriting of layered navigation urls) - we have just blocked the layered navigation links from being followed byt he search engines and are controlling the spider crawling via nofollow and robots.txt
Thanks for your thoughts. I ended up doing some permanent redirects in .htaccess to have the layered navigation links for the categories take users to the category and sub category pages and then for the other variables I will use nofollow on those links so they don’t index those product links
Thanks for your feedback and I would also like to know where you entered the nofollow code for the layered navigation
I agree the current setup is undesireable. Right now in order to allow people to filter by price I am forced to make it so any sub-categories (or sub-sub-sub-categories) are not spiderable.
I think it would be nice to have layered navigation, but a NORMAL category navigation system. People should not have to choose between allow price, navigation, color etc filtering and sane category navigation. For example, if there are multiple categories such as
Information -> Books -> Genre Literature -> Classic
When people are at “Books” and layered navigation is enabled it creates a situation where it is extremely inefficient to browser any sub-category of Genre Literature (must load multiple pages between every category change… Totally unncessary). So, layered navigation has to be turned off, so now people cannot filter base on price, media type (hard cover, paperback) and so forth.
I agree there are still issues with layered navigation and SEO
But there are options
1) No follow links on layered navigation
2) Block the search engines from spidering urls that are created within the layered navigation - via robots.txt
3) Remove layered navigation and place a static menu in your template
I am sure there are a few other options too.
1 and 2 are basically the same and counterproductive. the point is to improve and increase the content and relevancy for search engines. why would you block the search engines? we could block them for the whole site and not have to worry about them at all…
And 3, well then layered navigation is gone...which is another backwards step.
anyway, on to some recommendations:
Search Friendly URLS with layered navigation
currently, the attribute group is used with the selection as an id. ex: example.com/mycategory?color=1
the solution here is to replace the id with a word (1 == blue, 2 ==green, etc.) to get something like this: example.com/mycategory?color=blue
or even better, create more virtual directories to be something like: example.com/mycategory/color/blue
Page Title and META
each attribute group should have an option for page title (append/prepend)
same for meta description and meta keywords.
SO, if the category page title is “Widgets” , user selects “blue” from layered navigation, you have two possible page titles:
1) set prepend title to “Blue “ and title becomes “Blue Widgets”
2) set append title to “ (blue)” and the title becomes “Widgets (blue)”
It would also be nice to be able to assign a menu link to a specific layered navigation page (perhaps there is an option that is particularly popular) so that you are able to place unique content blocks on the page. or is there already a way to do this that i’m not aware of?
martijnr, How is that fixing it? I dont see where you have been able to get rid of the ‘?” or type and replace with the name of whatever it is. Unless I’m missing something here.
I would think this solution would be a high priority for Magento, where as SEO is very crtical.
The most important thing here for seo, is to show the attributes in the page title and in the content in the h1 tag. With this search engines will now see that the page has unique content.
My next step is to change the id in a name, but this is not as important as changing the title.