Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Open discussion on SEO


burt

Recommended Posts

  • Replies 293
  • Created
  • Last Reply

Been doing a load of research on meta keywords, including an experiment on a live site.

 

I've come to the conclusion that meta keywords are unused by most search engines.

 

The only one I can find definitely ARE used on is:

 

Baidu

 

Do I leave the module in, or rip the module right out?

 

--

 

Instead of completely nuking it, how about have the keywords admin as a "tagging" system for products.

And make the advanced_search_result page also search these tags to return products that match the search.

So, you could have common mis-spellings of your product, EG: "creme egg" (and in the tagging system have "cream egg")

Link to comment
Share on other sites

Leave the module in, or you'll get tons of complaints from people who insist they need it. Been there, done that.

 

I like the idea of making the search engine use it for alternate terms. That would be useful.

 

Regards

Jim

See my profile for a list of my addons and ways to get support.

Link to comment
Share on other sites

There's no harm in leaving in the <meta> keywords system, at least so long as you aren't doing anything that Search Engines might penalize as black hat SEO (keyword stuffing, keyword hijacking, etc.). Worst case, they ignore it; best case, it might help a little. Let implementers turn it off/not install it by their choice, if they really think it might be harming them.

Link to comment
Share on other sites

@@burt

 

Heres an example markup with microformatting from the DVD Movies - Comedy category.

 

My product listing code is way different, but you'll see the general idea with markup that pulls everything posible.

 

Notice that the first line opens with itemList, and then each product listed is marked as itemtype = product.

 

I used the new osc_get_mini_description to pull the itemprop description, when used across all pages, it will keep things consistant.

 

I also used a metatag to the image path, as it is possible if using thumbnail contributions the path could change and thus we loose consistancy from product listing to product_info

 

I chose this category so it also shows the review markup, which I feel could easily be grabbed with a new fuction as well, and thus reused anywhere needed.

 

itemprop="availability" is a bit trickier, as it depends if the shop owner allows checkout with 0 stock, and the ammount of stock in combination with products date available. There are 3 options, InStock, OutofStock, PreOrder.

 

you can see what data is pulled here: http://www.google.com/webmasters/tools/richsnippets?q=http%3A%2F%2Fwsfive.com%2Fprodlist-examle.html&html=

 

 

<div id="products-list-module" class="row-fluid" itemscope="" itemtype="http://schema.org/ItemList">

 <div id="theres-something-about-mary" class="media prod-row" itemscope="" itemtype="http://schema.org/Product">
  <figure class="pull-left thumbnails"><a class="thumbnail" href="http://website.web/theres-something-about-mary-p-19.html"><img src="images/thumbs/200x200_theres_something_about_mary.gif" title="There's Something About Mary" alt="There's Something About Mary" height="200" width="200"></a>
   <figcaption><i class="icon-star rating"></i> <i class="icon-star rating"></i> <i class="icon-star rating"></i> <i class="icon-star rating"></i> <i class="icon-star rating"></i> </figcaption>
  </figure>
  <meta itemprop="url" content="http://website.web/theres-something-about-mary-p-19.html">
  <meta itemprop="image" content="http://website.web/images/dvd/theres_something_about_mary.gif">
  <meta itemprop="description" content="Regional Code: 2 (Japan, Europe, Middle East, South Africa). Languages: English, Deutsch. Subtitles: English, Deutsch, Spanish. Audio: Dolby Surround 5.1. Picture">
  <div class="media-body">
   <h3 class="media-heading"><a href="http://website.web/theres-something-about-mary-p-19.html"><span itemprop="name">There's Something About Mary</span></a></h3>

   <div class="row-fluid price-wrap" itemprop="offers" itemscope="" itemtype="http://schema.org/Offer">
 <span class="price-text">Our Price: </span> <span class="productPrice" itemprop="price">$49.99</span>
 <meta itemprop="priceCurrency" content="USD">
 <link itemprop="availability" href="http://schema.org/InStock">
   </div>
   <div class="row-fluid desc-wrap">
 <p class="description">Regional Code: 2 (Japan, Europe, Middle East, South Africa). Languages: English, Deutsch. Subtitles: English, Deutsch, Spanish. Audio: Dolby Surround 5.1. Picture</p>

 <span class="span9" itemprop="aggregateRating" itemscope="" itemtype="http://schema.org/AggregateRating">Average <span itemprop="ratingValue">5</span> of <span itemprop="bestRating">5</span> Stars out of <span itemprop="reviewCount"> 1</span>  reviews.</span> 

 <span class="btn-wrap span3"><a id="bs-btn11" href="http://website.web/theres-something-about-mary-p-19.html" class="btn btn-mini btn-info btn-block">View More</a></span>
   </div>

  </div>
  <div class="row-fluid additional-wrap hidden-phone">
   <span class="grid3"><i class="icon-cogs"></i> by <span class="manuName" itemprop="manufacturer"><a href="http://website.web/fox-m-4.html">Fox</a></span> </span>
   <span class="grid3"><i class="icon-barcode"></i> <span class="model-text">Model: </span> <span class="modelNumber" itemprop="mpn">DVD-TSAB</span> </span>
   <span class="grid3"><i class="icon-reorder"></i> <span class="qty-text">Quantity: </span> <span class="productQty">9</span> </span>
   <span class="grid3"><i class="icon-asterisk"></i> <span class="weight-text">Weight: </span> <span class="productWeight">7.00</span> </span>
  </div>
  <div class="clearfix"></div>
 </div>

 <div id="youve-got-mail" class="media prod-row" itemscope="" itemtype="http://schema.org/Product">
  <figure class="pull-left thumbnails"><a class="thumbnail" href="http://website.web/youve-mail-p-7.html">
   <img src="images/thumbs/200x200_youve_got_mail.gif" title="You've Got Mail" alt="You've Got Mail" height="200" width="200"></a>
  </figure>
  <meta itemprop="url" content="http://website.web/youve-mail-p-7.html">
  <meta itemprop="image" content="http://website.web/images/dvd/youve_got_mail.gif">
  <meta itemprop="description" content="Regional Code: 2 (Japan, Europe, Middle East, South Africa). Languages: English, Deutsch, Spanish. Subtitles: English, Deutsch, Spanish, French, Nordic, Polish. Audio:">

  <div class="media-body">
   <h3 class="media-heading"><a href="http://website.web/youve-mail-p-7.html"><span itemprop="name">You've Got Mail</span></a></h3>

   <div class="row-fluid price-wrap" itemprop="offers" itemscope="" itemtype="http://schema.org/Offer">
 <span class="price-text">Our Price: </span> <span class="productPrice" itemprop="price">$34.99</span>
 <meta itemprop="priceCurrency" content="USD">
 <link itemprop="availability" href="http://schema.org/InStock">
   </div>
   <div class="row-fluid desc-wrap">
 <p class="description">Regional Code: 2 (Japan, Europe, Middle East, South Africa). Languages: English, Deutsch, Spanish. Subtitles: English, Deutsch, Spanish, French, Nordic, Polish. Audio:</p>

   <span class="btn-wrap span3"><a id="bs-btn12" href="http://website.web/youve-mail-p-7.html" class="btn btn-mini btn-info btn-block">View More</a></span>
   </div>
  </div>
  <div class="row-fluid additional-wrap hidden-phone">
   <span class="grid3"><i class="icon-cogs"></i> by <span class="manuName" itemprop="manufacturer"><a href="http://website.web/warner-m-3.html">Warner</a></span> </span>
   <span class="grid3"><i class="icon-barcode"></i> <span class="model-text">Model: </span> <span class="modelNumber" itemprop="mpn">DVD-YGEM</span> </span>
   <span class="grid3"><i class="icon-reorder"></i> <span class="qty-text">Quantity: </span> <span class="productQty">10</span> </span>
   <span class="grid3"><i class="icon-asterisk"></i> <span class="weight-text">Weight: </span> <span class="productWeight">7.00</span> </span>
  </div>
  <div class="clearfix"></div>
 </div>
</div><!-- End ItemList -->

 

I'll put more into it later, I just am low on time right now and this should be good for wrapping everyones head around things.

Follow the community build:

BS3 to osCommerce Responsive from the Get Go!

Check out the new construction:

Admin Gone to Total BS!

Link to comment
Share on other sites

A great idea would be a module to insert hash tags on product pages and then use those hash tags on social networks when you post on Twitter and Facebook. Also those hash tags could be searchable in google and lead the potential customer directly to your product page. If someone can develop that idea and execute it just right it will return great results.

 

Accept my apologies if there's a module that already uses that idea. Any thoughts?

Link to comment
Share on other sites

@@burt

 

The idea in my above post could be rewarding if implemented correctly. That is a project for someone with your coding skill set. When I searched for #beautiful in Google, links to videos and other information about Mariah Carey's song "Beautiful" was at the very top of the listings. So if a module can be developed so hash tags can be incorporated into the product pages and into OSC core, a trend could be started.

 

You could call it "Searchable Hash Tags" or something like that...

Link to comment
Share on other sites

Hi everybody,

 

is new "fine tuning" feature coming soon in v2.4 http://v24.oscom.hu/index.php?products&id=28 ? Look at

Samsung Galaxy Tab 7

 

;)

:blink:
osCommerce based shop owner with minimal design and focused on background works. When the less is more.
Email managment with tracking pixel, package managment for shipping, stock management, warehouse managment with bar code reader, parcel shops management on 3000 pickup points without local store.

Link to comment
Share on other sites

Thanks guys, I been pre-occupied the last few days and have not made any headway on the microdata formatting. Will better respond in the coming week.

 

How do we feel about "content" as part of SEO (eg, product reviews, testimonials and so on).

Link to comment
Share on other sites

Thanks guys, I been pre-occupied the last few days and have not made any headway on the microdata formatting. Will better respond in the coming week.

 

How do we feel about "content" as part of SEO (eg, product reviews, testimonials and so on).

 

Well as the saying goes....Content is king. In regards to product reviews and testimonials, the consumer may or may not use the keywords that you would hope. However, that could help potential customers make a buying decision at your shop.

 

I've always wondered how testimonials and reviews influence rankings and indexing.

Link to comment
Share on other sites

I use header tags seo, seo sitemap etc etc on my 2.2 stores and have managed to get #1 place on google for many of my products - but these products are the ones that I have a lot of good reviews for - coincidence or not I dont know - also "Mentions" on related forums seem to help as well.

 

One thing I have noticed is that when I post a self promotion tweet on twitter - google is on the link I post within less than seconds...

Now running on a fully modded, Mobile Friendly 2.3.4 Store with the Excellent MTS installed - See my profile for the mods installed ..... So much thanks for all the help given along the way by forum members.

Link to comment
Share on other sites

  • 2 weeks later...

Hers a simple function that can be inserted where need be to show a microformated review average rating format:

 

 ////
 // average review
function osc_review_avg($products_id) {
 $review_query = tep_db_query("select round(avg(reviews_rating)) as rating, count(*) as count, max(date_added) as date from " . TABLE_REVIEWS . " where products_id = '" . $products_id . "' and reviews_status = " . (int)1);
 $review = tep_db_fetch_array($review_query);

 if ($review['count'] > 0 ) {
  $reviewAve = '<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">' . PHP_EOL;
  $reviewAve .= str_repeat('<i class="icon-star rating"></i> ', $review['rating']) . PHP_EOL;
  $reviewAve .= sprintf(TEXT_REVIEWS_AVERAGE, $review['rating'], $review['count']);
  $reviewAve .= '</div>' .PHP_EOL;
 }
 return $reviewAve;
}

And heres the language define:

define('TEXT_REVIEWS_AVERAGE', '<br>Average <span itemprop="ratingValue">%s</span> of 5 stars out of <span itemprop="reviewCount">%s</span> reviews.');

 

 

I did use icon fonts for the stars, so that may need to be replaced with an image, unless a black or white default twitter bootstrap icon is ok. I use fontawesome on my projects, so therefor you see the icons additional class, "rating" which is simply a style for the star icon - which cannot be done with the default BS icon set.

Follow the community build:

BS3 to osCommerce Responsive from the Get Go!

Check out the new construction:

Admin Gone to Total BS!

Link to comment
Share on other sites

I haven't had time to devote to this project although good headway has been made if you look at my github. I've been working on a related project and am just about to wrap that up (hopefully today, maybe tomorrow) so can devote a bit more time going forward.

Link to comment
Share on other sites

Not a problem, Ive been turning a few microformat snippets into functions for a project I'm trying to wrap up, and figure I'll post them here as I go along. Some make no sense to turn to functions, but others work out very well.

Follow the community build:

BS3 to osCommerce Responsive from the Get Go!

Check out the new construction:

Admin Gone to Total BS!

Link to comment
Share on other sites

Hi,

 

I found duplicate content errors in google webmester tools reports.

 

When cPath parameter is false but give result on server

cPath=1_17 is correct

cPath=1_2_17 duplicate content

 

My quick solution in the application_top.php

 

Afer:

// add category names or the manufacturer name to the breadcrumb trail
 if (isset($cPath_array)) {

 

insert:

   //reverse cPath controll by Gergely
   for ($i=sizeof($cPath_array)-1, $n=0; $i>$n; $i--) {
  $categories_query = tep_db_query("select categories_id from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$cPath_array[$i] . "' and parent_id = '" . (isset($cPath_array[$i-1]) ? (int)$cPath_array[$i-1] : 0) . "'");
  if ( !tep_db_num_rows($categories_query) ) {
    header("HTTP/1.0 404 Not Found");
    exit;
  }
   }
   //reverse cPath controll end by Gergely

:blink:
osCommerce based shop owner with minimal design and focused on background works. When the less is more.
Email managment with tracking pixel, package managment for shipping, stock management, warehouse managment with bar code reader, parcel shops management on 3000 pickup points without local store.

Link to comment
Share on other sites

  • 2 weeks later...

I've been looking more closely at Microdata. Everything I have read everywhere says that Microdata should be used only in the product pages, and not in product lists (eg the list of products in a category). Anyone have a comment on that?

Link to comment
Share on other sites

I would presume that the intent is to eliminate extraneous SE entries and get the potential customer as directly as possible to the final product page. Ditto for comparison shopping pages, etc. They don't want to see the entirety of what other products you sell under a category; they want to see specific product details. If there is a purpose to be served with category pages, etc, there's probably a Microdata listing format for that purpose.

Link to comment
Share on other sites

@@burt

 

They have a format called itemlist, this allows for categor listings if products/articles. After the call to itemlist, then the items listed would have their markup that specifies they are products.

 

I think one of the reasons that so many recommend the format is only in the actual product page is becuase of the risk of confusion of the actual products url, image, etc; You wouldnt want the SE's picking up info related to one page when in actuallity it belongs elsewhere.

 

However this can be overcome by adding meta info in the markup that includes the products direct URL, path to image, and any other information that could potentially change when the information is presented in a location outside of its respective product_info page.

 

All data MUST consistant across the board, no matter what page it shows on. Now thinks such as name, price, currency, stock, review ratings, manufacturer, and model will be consistant no matter where the products presentation.

 

Ive found that these 3 things can change -

 

ItemProp Image - If using a thumbnailer it will be a different image depending what page serves it. The work around is to add an image itemprop inside a metatag with the exact path to the image, or (thumbnailer) path to what the product_info page popup uses. This meta tag would be used within category, specials, new_products, etc;

 

ItemProp Description - Same as above, this can change from a listing to the actual product page. To get around it, the function Gary recently wrote for products_precis will work fine if output into a metatag in every place the product displays. PERIOD. Even though your on the product info page, you still want that as the itemprop as it ensures the same description across the board, and it keeps it within recommended character limits.

 

ItemProp URL - Again, same as above. Kind of a canonical type of issue, but easily done with use of a meta tag that holds the direct path to the product, again, shown each and everywhere the product is displayed. One thing to watch, the oscSid needs to be strippedfrom the final output.

 

So I find it irrelevant were the markup occurs, so long as the data is properly presented with consistant data across the board. If it is not consistant then everything becomes scrambled and practically defeats the purpose.

Follow the community build:

BS3 to osCommerce Responsive from the Get Go!

Check out the new construction:

Admin Gone to Total BS!

Link to comment
Share on other sites

Assuming someone were to install what Burt has done so far what would be the recommended means to get meta title and description on just the home (index.php) page so it displays correctly and doesn't futz up the manufacturer meta description for example???

 

 

Adding:

- title for

-- products

-- manufacturers

-- categories

-- pages (eg shipping.php etc)

 

Adding:

- meta description for

-- products

-- manufacturers

-- categories

-- pages (eg shipping.php etc)

 

Adding:

- meta keywords for

-- products

-- manufacturers

-- categories

-- pages (eg shipping.php etc)

 

Adding:

- description for

-- manufacturers

-- categories

 

Adding:

- better facebook module

- better twitter module (twitter cards)

 

Adding:

- some system for viewing where people come from

-- I still think Google Analytics is the correct tool for this

- Google Adwords Conversion header_tag

 

Adding:

- microdata pages

-- product listings

-- product review

-- list of product reviews

 

Adding:

- mini product descriptions

 

Adding:

- noodp and noydir module

 

strikethru's are done and coded.

I am not a professional webmaster or PHP coder by background or training but I will try to help as best I can.

I remember what it was like when I first started with osC. It can be overwhelming.

However, I strongly recommend considering hiring a professional for extensive site modifications, site cleaning, etc.

There are several good pros here on osCommerce. Look around, you'll figure out who they are.

Link to comment
Share on other sites

In dutch we say 'U vraagt, wij draaien ...'

in english it is something like 'your wish is my command ...' :thumbsup:

 

 

P.S. oh, too bad, I'm still not fluent in Github. I saw Smashing Magazine is offering a beginners workshop in Freiburg Germany in the fall. Wonder what is most efficient, seeing it all in action, or struggling through some course or book on my own :wacko:

KEEP CALM AND CARRY ON

I do not use the responsive bootstrap version since i coded my responsive version earlier, but i have bought every 28d of code package to support burts effort and keep this forum alive (albeit more like on life support).

So if you are still here ? What are you waiting for ?!

 

Find the most frequent unique errors to fix:

grep "PHP" php_error_log.txt | sed "s/^.* PHP/PHP/g" |grep "line" |sort | uniq -c | sort -r > counterrors.txt

Link to comment
Share on other sites

P.S. oh, too bad, I'm still not fluent in Github. I saw Smashing Magazine is offering a beginners workshop in Freiburg Germany in the fall. Wonder what is most efficient, seeing it all in action, or struggling through some course or book on my own :wacko:

 

Carine check this out: http://sourcetreeapp.com/ It's what I've been using to work with Github, the interface replaces a lot of the command line stuff that otherwise would be necessary.

 

To use it you have to set up a GitHub account, then install the sourcetree app. The sourcetree app has a setup wizard to walk you through the process.

 

Once you are there, try this: Clone/New>Sourcepath/Url Enter https://github.com/haraldpdl/oscommerce2

Then set up your destination path on your local harddrive and that'll get you something to look at anyway.

 

I'm using the sourcetree app to follow the work done by Harald, Gary and Gergely on GitHub. Once you get the gist of what's happening there it opens up more options for you. For me it's a great learning tool as well as a means to keep up with the latest developments. Pun intended.

I am not a professional webmaster or PHP coder by background or training but I will try to help as best I can.

I remember what it was like when I first started with osC. It can be overwhelming.

However, I strongly recommend considering hiring a professional for extensive site modifications, site cleaning, etc.

There are several good pros here on osCommerce. Look around, you'll figure out who they are.

Link to comment
Share on other sites

 

Thanks, that took care of it. Ran into something with the title meta for index.php...I want to double check my install and get back if I can see why something is happening.

I am not a professional webmaster or PHP coder by background or training but I will try to help as best I can.

I remember what it was like when I first started with osC. It can be overwhelming.

However, I strongly recommend considering hiring a professional for extensive site modifications, site cleaning, etc.

There are several good pros here on osCommerce. Look around, you'll figure out who they are.

Link to comment
Share on other sites

  • 2 weeks later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...