You are here:Home»KB»Web Design»CMS»why zen cart does not index on search engines
Thursday, 15 October 2009 00:00

why zen cart does not index on search engines

Written by

Firstly if your site is only a couple of days old to a few weeks this tutorial might not work.

My zencart shop had been open for 8 months and was still not listed in the search engines. This was despite have an adwords campaign and submitting a site map. A few backlinks but not many, it still should of responded to site:mywebsite.com. I had no listings at all in any search engines.

I pulled may hair out trying to fix this, i was using 1.38 with a few standard mods.

Cause:

  1. Session ID's
  2. NoIndex, NoFollow present on every page.

Why does this effect my search results:

Session IDs

In the case of zencart every time you visit the shop you get a session ID, this is presented via the url. This url is unique for every visit. zencart recognises a spider/bot when it visits and so does not issue a session ID to the crawler. In my shop this was not working and every time a spider/bot visited it was assigned a url with a session ID, therefore the spider/bot would never see the same page twice hurting SERPS (search engine placement).

For my site i discovered that on yahoo / alltheweb / altavista I had 14,000 links to my site in the search engines yet no search results pointing to my site, I looked more closely at these results and noticed the url was the same in everyone except the end bit 'zenid=......' These  14,000 links had caused my site to have an extremely low rating which prevented the homepage coming up the the search results. 14,000 bad pages = bad site. As far as the search engines knew my site was a spam site because they were all individual and were not verified, ie read twice. I did check this but the shop was not blacklisted, the engines would just put it down as a 'bad' site.

NoIndex, NoFollow

This is simple, this tells google, yahoo etc on every page this command is present not to index the page at all, so zencart says 'dont index this page', i do not want you too', so they dont.

Conclusions

These two errors combined will completely prevent the search engines displaying your site, even if you have submitted a sitemap and the search engines regulary visit your site. The searchbots and the computer programs that display your results in a search engine are completely different and use different criteria.

Solution (after months of thinking)

It turns out that zencart 1.38 has 2 bugs in it causing it to add NoIndex, NoFollow to every page, the session IDs added to every page is caused by user error, this is most likely to occur when you transplant a site. To fix these problems read below, not all issues might be present.

Session ID

  1. Goto into the admin section, and set session path correctely (fix)
  2. Check Cache folder has correct permissions, either 755 or 777 (which ever is correct for you server).
  3. If the session cache is not set to a real directory (or writable directory) all spiders/bots will recieve a session id. This Tool corrects the Cache folder location. This has to be done whenever the shop is moved.
  4. Make sure Spiders do not recieve session id. By default. it is. but i turned it off and on again anyway.

    'Sessions -> Prevent Spider Sessions' is set to True in Admin .

NoIndex, NoFollow Always Present

  1. This bug is where NoIndex, NoFollow is added when display categories on the front page is set to true. (link)

    Admin->Configuration->Layout Settings->Categories - Always Show on Main Page = 1
     
  2. There might be an error present in the html_header.php of the template where v1.38 puts NoIndex, NoFollow on every page because of bad coding.

    An edit of the theme (html_header.php) is required to allow indexing, by removing some 'line comment out' things. (fix response #66)

Repairing the Damage

To get rid of those unwanted links in search engines add the following to your robots.txt

User-agent:*
Disallow: *zenid=*
Disallow: /*zenid=*

when these are all done your site could get listed in the search engines within 6 hours but more than likely a couple of days. mine took six hours to get into yahoo, 12 into bing and then i was in the google cache within 24 hours, google search results about 36hours.

I have put together this information because i know i am not the only one and the solution is tricky if you are not an experienced web developer (or even if you are).

shoulders
http://www.zen-cart.com/forum/showthread.php?t=134865

Read 3585 times Last modified on Saturday, 08 November 2014 12:59