Is there a way to change Magento dynamic faceted search pages into static pages? - magento

I've just been given the task of turning around a site's plummeting SEO. One of their issues is their well ranking deep products have now been cut off due to them now being shown as part of a dynamic faceted search option. It can't and won't be indexed and the faceted search is important to the way they need to display their products.

You could create a rewrite rule to make it appear like they are static pages, but I would recommend not doing that.
Ask yourself if Google would want to crawl search result pages: probably not. It's very common to NOINDEX, NOFOLLOW search result and tags pages because they are low quality in terms of content.
Here's a free extension to help you accomplish just that.
Here's a helpful article on SEO in relation to Magento.
Sounds like they got hit by Panda/Penguin. You should be focusing on building links to your main categories and your homepage. Clean up poor quality pages (eg search result pages). Build deep links to products that perform well, but vary your anchor tags considerably. Without a link we can't give much more advice than that.

Related

Should Magento sitemap contain empty categories?

From SEO point of view, isn't it dangerous to give out a page without any practical value? If you advertise to have content for a particular category, but you actually don't, wouldn't that make the poeple who clicked on the link to just move along?
More importantly, would the empty category not make guys working at Google mark your website as spammy? Cause you have 100 categories in your sitemap, and only 10 actually contain products?
If you are not using them for content or other presentation you should hide/disable categories that are empty until you have products in them.

Landing pages defined by attribute for Magento

i'm looking for solution how to have a landing page with products which are filter by some attribute (ie. Brand = Addidas). I was checking advanced search but it doesnt provide layered navigation, which is requested by client.
What I found is the free module http://fishpig.co.uk/attribute-splash-pages.html. It seems to be working, but for each combination of attribute X attribute value I need to configure something in database. It's not useful if you need to maintain thousands of combinations.
My another idea is to review catalog/layer model to remove filtering by category but it probably destroy something :)
Have you any idea or direction where would I go?
Thanks, Jaro.
have a look at http://yoast.com/landing-pages-module-magento/
i've used both and find fishpigs much better for manual creation of optimised pages, but for blasting out auto landing pages yoast is ideal.

URL rewriting in shopping cart site best practice?

I am building an eCommerce web site with a shopping cart.
Each item in this portal belongs to one category. So when I display an item, in an item details page, which is the best practice to create the URL from the following?
1. <domain>/<item-category>/<item-name>
2. <domain>/<item-name>
The reasons for URL rewriting are (a) to make URL's more human readable and (b) to make the URL's more search engine friendly. In this respect, whether you include the category probably makes little difference to humans if they can distinguish the product from the name alone. Adding category might make the links more understandable to a search engine, but there can be a penalty for depth of link too. With just three sections, you should be OK, but in instances where you have a deeper hierarchy, you might look at joining the item category and name with a separator that isn't '/', such as '-'.

Opencart, remove category string from the canonical URL of a product

In Magento there's a tick box - if you want or not to have the category in the product's link.
In Opencart there's no such think. What there is in Opencart - is a file which manages the SEO interpretation of links.
If you'll add "/" in front of the link within that file (the professionals who worked with it know about it) that will make the link absolute instead of relative and the product will appear at the beginning of the web site root.
My concern is that at some point this will break and I'm looking for a solution which can be applied on a commercial platform 20k+ products where failing can bring real damage.
The files I was talking about are these:
1.4.x: /catalog/model/tool/seo_url.php
1.5.x: /catalog/controller/common/seo_url.php
The change I already know you need to do is:
$url .= '/' . $query->row['keyword'];
replace with:
$url = '/' . $query->row['keyword'];
It breaks things such as breadcrumbs, again - my concern is that I don't know what other things it breaks therefore I'm looking for another solution.
SEO is mandatory, any SEO advice / plugin applied on Opencart will be more than welcomed. I'm constantly researching the market for related software, I'm willing to change the CMS (which will involve investing hours of development) if I can get better solutions.
Currently I'm dealing with Magento which is NOT flexible, each change drives us crezy - we're looking for something nu that buggy and difficult to work on.
What version of OpenCart are you working with? The latest?
The standard MVC structure of OpenCart combined with native PHP coding makes it a tremendously flexible CMS solution.. (I actually use the core for numerous types of sites).
OpenCart currently depends on the two files you mentioned combined with the SEO table in the database to handle rewrites.
It does not really 'break' the breadcrumbs. Breadcrums are more a history/navigation aid. With SEO urls if you enter a specific product URL you are navigating immediatly navigating to a specific item. So in the heirarchy it would only be one level below the home page..
e.g. yoursite.com/seoproduct
'home' -> 'seo product'
If you use the navigation heirarchy it still renders correctly (without the mod you mentioned)
'home' -> 'category -> 'sub-category' -> 'seo product'
That said, in theory it is easy to acomplish whatever you want with SEO urls. A simple modification to the two files is enough.
In practice, it just depends on how you want to handle them...
How are you going to handle specifying the SEO url for the product? Based on product name? Product model? Or are you going to use the native SEO field in the product info?
If it is the latter, the cart will automatically handle the rewrite. Unfortunately, letting the cart handle it natively also carries the greatest risk of links breaking over time as changes are made.
If it is one of the former options, you will need to make some modifications to how the SEO rewrite is handled.
Once you determine how you are going to be handling the rewrite you can put it in action...
The easiest modification would be to use the native SEO but then add in a redundant search fallback. If no results are found on the in the common/seo controller, have it search for results. If one is found display the product - if more than one is found display the results..
On the other hand, you could completly modify both files and go with a custom SEO handling. (again using a search to find the product)...
I have done it both ways... The first tends to have a bit better performance as it does database/text search only if the direct query returns no results...
There is a canonical tag in the head (at least in version 1.5.0) and in my testing this stayed the same regardless of whether or not the page was access through http://example.com/category1/product-123 or http://example.com/product-123.
<link href="http://example.com/product-123" rel="canonical" />
I would recommend looking at How can I create custom SEO-friendly URLs in OpenCart? for your other pages (information, cart, checkout, etc).
I've took the decision to:
Not set a string on the SEO field of each category
This will not add the category name before the product
This means that instead of /category/product I'll have /product
As CarpeNoctumDC said, I could change the PHP files so that the category could've been removed automatically but the disadvantages I can see are:
You need to update the core PHP files on each update
Can't certify of there are places where that turns against you, since it's not part of the theme but it's part of the core of opencart
The good news is that there's no need for the brand / manufacturer string before the product name (as many of us probably need) because we can use the manufacturer feature for that.
In this way the category / subcategory can be non relevant SEO text (which in my case is), the product link is legitimately set by opencart to /{link} which is totally SEO friendly and if I need a representation of the link with the manufacturer I only have to set a SEO link to the manufacturer itself. This will generate /{manufacturer}/{link_of_the_product} which on top it has within the header a canonical link pointing towards /{link_of_the_product} - in this way Google will not be disappointed.
As this very moment I'm doing the exports / imports form the old Magento 1.6 which turned to be a pain to the opencart customized as mentioned above.
We've passed Google Panda - there's no bad history on the domain, no duplicate content so far (~10k products) - we'll see how things turn after this major update.
If Google doesn't agrees with this config, I will post warnings on this topic.
Bogdan

Are Rich Snippets page specific or domain specific?

Google will now parse certain microdata (for example reviews) on your web pages and display the info in search results. They call this Rich Snippets
I am wondering is this page specific or domain specific?
I keep all my reviews on a separate review page thats linked to from the home page. But my review page itself is very unlikely to be displayed in a search result, more likely to be displayed is my homepage or product landing page. But being that the review microdata is not on these pages (but is on the website). I am wondering if the rich snippets will be shown for these pages?
They're tied to the page, effectively; a result which returns the homepage won't include content from another page. As with any other organic ranking scenario, Google aims to return the best individual page for a query; as such, if it percieves your homepage to be a more authoritive resource and result for the search query, it'll return that rather than the page containing the microformatted data.
I'd tentatively suggest that the wider problem is one of value attribution, and that undertaking some page-level SEO in order to clearly signpost content/context, and to ensure that content is distinct and relevant at page-level (and in one place for one topic) might help.

Resources