Jump to content
Tsimi

SEO Header Tags - RELOADED support?

Recommended Posts

You can do it in phpmyadmin, but that defeats the purpose of creating especially crafted titles and descriptions, no?

Yes it certainly does!!! You are right. I'm trying to deliver the best to my customer but doing thorough SEO works on product level is not sth. I got hired for. I guess I have to explain my customer that SEO functionality is ready but writing for SEO is sth extra.

Thank you for the prompt reply :-)

Share this post


Link to post
Share on other sites

Even if you used and modified easy populate surely you have to write unique meta tags by typing them in ne t a time.


REMEMBER BACKUP, BACKUP AND BACKUP

Get the latest Responsive osCommerce CE (community edition) here

It's very easy to over complicate what are simple things in life

Share this post


Link to post
Share on other sites

hello Again.

I noticed that my meta description on page source contains <p> tags. Does anyone know how to get rid of them?

 

THank you for your recommendations.

Do you have any suggestions about the quoted query?

Share this post


Link to post
Share on other sites

Remove the <p> tag from your meta descriptions ?


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

Yes <p> tags are created automatically and become part of the meta tag data either I write with the editor or with the source code.

Share this post


Link to post
Share on other sites

I would like to add/make visible the category description text on each category page.

I found that Category Description v1.08 contribution is a good approach.

Do you know if there would be certain conflicts with your add on?

 

Thank you.

Share this post


Link to post
Share on other sites

This is already included in the reloaded addon. Try exploring the addon in full.


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

This is already included in the reloaded addon. Try exploring the addon in full.

 

That's good to hear Burt and the truth is that after examining your sql code I supposed that your contribution would cover that need as well.

But though I have tried to add

<?php echo $categories_desc['categories_description']; ?>

to the index page I don't see my test description appearing on the relevant category page.

Here is an example http://smokingpaper.gr/smoking-artistic/kukuxumusu-c-33_26.html

 

I did checked the addon and the only extra I found refers to information pages. How this would relate to the category description text showing on category page?

Share this post


Link to post
Share on other sites

You don't need to add any new code, you just need to ensure that you have properly installed the addon and then you need to ensure you ahve category descriptions added (admin > categories > add new / edit > insert the text into the box > save).

 

AND DO NOT USE HTML IN THESE BOXES.


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

You don't need to add any new code, you just need to ensure that you have properly installed the addon and then you need to ensure you ahve category descriptions added (admin > categories > add new / edit > insert the text into the box > save).

 

AND DO NOT USE HTML IN THESE BOXES.

 

Ok got it. I should edit and save the meta fields with the source code view active. But my major issue is how to display the category description on the front end. I want to add some descriptive text at the beginning/top of the each category index page. Unfortunately I don't have the experience with Osc to add that part of code.

Share this post


Link to post
Share on other sites

If they do not automatically show then you have not installed it correctly. Category Descriptions are BUILT IN.


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

If they do not automatically show then you have not installed it correctly. Category Descriptions are BUILT IN.

 

I found this solution on a past topic https://github.com/gburton/oscommerce2/blob/3a273e0cc89dab8640c21b929ad1bd0b656ac47f/catalog/index.php#L217-L231

Do you think that this is not valid for my case? I examined my index.php and I'm missing the following part from the code showing.

 

<h1><?php echo $catname; ?></h1>
<?php
if (tep_not_null($image['categories_description'])) {
 ?>
<div class="categoryText"><?php echo $image['categories_description']; ?></div>
<?php
}
?>

Share this post


Link to post
Share on other sites

2013 11 12

----------

 

- Removal of Twitter Cards (now included in Core osCommerce)

- Removal of Adwords Conversion (now included in Core osCommerce)

- Removal of ht_product_og_facebook (replaced by ht_product_opengraph)

- Addition of ht_product_opengraph

- Addition of category description output in index.php

- Addition of manufacturer description output in index.php

 

Try reading the readme.txt file. Which also means you have not correctly installed, or you have installed an older version and not kept on top of updates.

Edited by burt

This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

I found this solution on a past topic https://github.com/gburton/oscommerce2/blob/3a273e0cc89dab8640c21b929ad1bd0b656ac47f/catalog/index.php#L217-L231

Do you think that this is not valid for my case? I examined my index.php and I'm missing the following part from the code showing.

 

<h1><?php echo $catname; ?></h1>
<?php
if (tep_not_null($image['categories_description'])) {
?>
<div class="categoryText"><?php echo $image['categories_description']; ?></div>
<?php
}
?>

 

Ok problem solved Burt. Thank you for your support.

Share this post


Link to post
Share on other sites

http://addons.oscommerce.com/info/8864

 

Now includes a fileset for bootstrap osCommerce


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

Hi Guys,

Couple of questions:

1. How do I find if I use "normal" or "bootstrap" version of osCommerce. Actually, what is the difference between the two?

(Sites in question are www.hatsfromoz.com.au and www.beltsfromoz.com.au)

 

2. Readme file says that AdWords conversion tracking was removed and is part of core osCommerce. Where is it??? I can not find settings to enable it.

 

Thanks,

Rudolf

Share this post


Link to post
Share on other sites

Is anyone interested in google analytics HT module that works with new Universal Analytics? I switched to Universal and had to write new module to support it, If there is an interest, how do I submit/uload it?

 

Thanks,

Rudolf

Share this post


Link to post
Share on other sites

(Sites in question are www.hatsfromoz.com.au and www.beltsfromoz.com.au)

 

Neither of these are Bootstrapped, see http://forums.oscommerce.com/topic/396152-bootstrap-3-in-2334-responsive-from-the-get-go/

 

2. Readme file says that AdWords conversion tracking was removed and is part of core osCommerce. Where is it??? I can not find settings to enable it.

 

admin > modules > header tags > install

 

 


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

Is anyone interested in google analytics HT module that works with new Universal Analytics? I switched to Universal and had to write new module to support it, If there is an interest, how do I submit/uload it?

 

Thanks,

Rudolf

 

addons.oscommerce.com


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

 

admin > modules > header tags > install

 

Thanks,

My site is 2.3.1 and did not have the module. No wonder I could not find it.

 

Rudolf

Share this post


Link to post
Share on other sites

I have encountered an issue which i can't resolve by my own.

I installed the add-on Master Products, that Add-on contains already the function to add a small/short description in the slave product listing. In short it's like a product listing inside the product_info.php file. This is the code used to show the description

 

osc_trunc_string(strip_tags($listing['products_description']), MASTER_LIST_DESCRIPTION_LENGTH)

 

The downside is i can't use HTML tags like < br / > or < p > inside it. It just shows the description connected as it were a sentence and not a list.

 

So i thought why not use the product mini description which comes with the SEO Header Tags - Reloaded add-on. ($listing['products_mini_description']) I can nicely add HTML code to it and it shows correctly, well in English at least.

The problem shows up when i choose German or French. (see attached images)

When switching to another language besides English the model number and the mini description of the second product and below are displayed in "bold". This happens with German and French but not with English.

First i thought i forgot to close a < b > or < strong > tag somewhere but if so then English would show the bold text too, right? I'm really puzzled by this because using the striptags solution from the Master Products Add-on don't cause something like that.

What could be the reason for something like this? Where should i look?

 

images: (from left to right)

 

SEO mini descr. in english / SEO mini descr. in german / Master striptags descr.

Edited by Tsimi

Share this post


Link to post
Share on other sites

Impossible to say without seeing the site. My first idea would be that (like you say) you have an opening b or strong somewhere (in the German version of the description).


This is a signature that appears on all my posts.  
IF YOU MAKE A POST REQUESTING HELP...please state the exact version
of osCommerce that you are using. THANKS

 
Get the latest Responsive osCommerce CE (community edition) here

Share this post


Link to post
Share on other sites

Hi @@burt

 

Here is the link to the shop page

 

http://wanokaze.jp/dev1/musashi-p-32.html

 

Change to german to see the difference.

English = OK

German/French = not OK

I thought too I might have forgoten to close a < b > or < strong > tag but then why does the bold font

starts at with the "model number"?

 

Here are the description text for all three languages I'm currently using.

 

Length: 21 cm (approx. 8.3 inches)<br />

Material: Red sandalwood<br />

Coating: Urushi (Tip only)<br />

Color: red brown<br />

<span style="color:#FF0000"><strong>Not Dishwasher proof!</strong></span>

 

Länge: 21 cm<br />

Material: Rotes Sandelholz<br />

Beschichtung: Urushi (nur die Spitze)<br />

Farbe: rot braun<br />

<span style="color:#FF0000"><strong>Nicht Spülmaschinenfest!</strong></span>

 

Longueur: 21 cm<br />

Matériel: bois de santal rouge<br />

Revêtement: Urushi (seulement la pointe)<br />

Couleur: brun rouge<br />

<span style="color:#FF0000"><strong>Pas au lave-vaisselle!</strong></span>

 

and here is the piece of code for the listing

 


if ($listing_split->number_of_rows > 0) {
$rows = 0;
$slave_id = (isset($HTTP_GET_VARS['slave_id']) ? $HTTP_GET_VARS['slave_id'] : '');

$master_query = tep_db_query($listing_split->sql_query);
$list_box_contents .= ' <div class="masterListOuter">' .
					 '<div class="clear"></div>';
while ($listing = tep_db_fetch_array($master_query)) {
 $rows++;

 $list_box_contents .= '<div class="masterListInner">';
 for ($col=0, $n=sizeof($column_list); $col<$n; $col++) {
 switch ($column_list[$col]) {
	 case 'MASTER_LIST_MODEL':
	 $list_box_contents .= '';
	 break;
	 case 'MASTER_LIST_NAME':
	 if (isset($HTTP_GET_VARS['manufacturers_id'])) {
		 $list_box_contents .= '<div class="slaveNameOuter"><div class="slaveName' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a></div><div class="slaveDescr"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . $listing['products_mini_description'] . '</div></div></div>';
	 } elseif (tep_not_null($listing['products_model'])) {
		 $list_box_contents .= '<div class="slaveNameOuter"><div class="slaveName"' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a></div><span class="smallText">[' . $listing['products_model'] . ']</span><div class="slaveDescr"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . $listing['products_mini_description'] . '</div></div></div>';
} else {
 $list_box_contents .= '<div class="slaveNameOuter"><div class="slaveName"' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . $listing['products_name'] . '</a></div><div class="slaveDescr"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . $listing['products_mini_description'] . '</div></div></div>';
}
	 break;
	 case 'MASTER_LIST_DESCRIPTION':
	 $list_box_contents .= '';
	 break;		
	 case 'MASTER_LIST_MANUFACTURER':
	 $list_box_contents .= '<div class="slaveManu"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . '<a href="' . tep_href_link(FILENAME_DEFAULT, 'manufacturers_id=' . $listing['manufacturers_id']) . '">' . $listing['manufacturers_name'] . '</a></div></div>';
	 break;
	 case 'MASTER_LIST_PRICE':
	 if (tep_not_null($listing['specials_new_products_price'])) {
		 $list_box_contents .= '<div class="slavePriceSpecial"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . '<s>' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s><br /><span class="productSpecialPrice">' . $currencies->display_price($listing['specials_new_products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</span></div></div>';
	 } else {
		 $list_box_contents .= '<div class="slavePrice"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</div></div>';
	 }
	 break;
	 case 'MASTER_LIST_QUANTITY':
	 $list_box_contents .= '<div class="slaveQty"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . $listing['products_quantity'] . '</div></div>';
	 break;
	 case 'MASTER_LIST_WEIGHT':
	 $list_box_contents .= '<div class="slaveQty"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . $listing['products_weight'] . '</div></div>';
	 break;
	 case 'MASTER_LIST_IMAGE':
	 if (isset($HTTP_GET_VARS['manufacturers_id'])) {
		 $list_box_contents .= '<div class="slaveImage"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'manufacturers_id=' . $HTTP_GET_VARS['manufacturers_id'] . '&products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SLAVE_IMAGE_WIDTH, SLAVE_IMAGE_HEIGHT) . '</a></div></div>';
	 } else {
		 $list_box_contents .= '<div class="slaveImage"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>') . '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $listing['products_image'], $listing['products_name'], SLAVE_IMAGE_WIDTH, SLAVE_IMAGE_HEIGHT) . '</a></div></div>';
	 }
	 break;

	 case 'MASTER_LIST_BUY_NOW':
	 $list_box_contents .= '<div class="slaveBuy"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>');

	 if ((STOCK_CHECK == 'true')&&(tep_get_products_stock($listing['products_id']) < 1)) {

	 $list_box_contents .= TEXT_STOCK;

	 } elseif ((STOCK_CHECK == 'false')&&(tep_get_products_stock($listing['products_id']) < 1)) {

		 $qty_array = array();
		 for ($i=0; $ns = 10, $i <= $ns; $i++) {
	 $qty_array[] = array('id' => $i,
								 'text' => $i);
		 }

//		 $list_box_contents .= tep_draw_input_field('Qty_ProdId_' . $listing['products_id'], '0', 'size="4"');			
 $list_box_contents .= tep_draw_pull_down_menu4('Qty_ProdId_' . $listing['products_id'], $qty_array);

	 } else {

		 $quantity = tep_get_products_stock($listing['products_id']);
		 $qty_array = array();
		 for ($i=0; $ns = (($quantity < 10) ? $quantity : 10), $i <= $ns; $i++) {
	 $qty_array[] = array('id' => $i,
								 'text' => $i);
		 }
//		 $list_box_contents .= tep_draw_input_field('Qty_ProdId_' . $listing['products_id'], '0', 'size="4"');			
 $list_box_contents .= tep_draw_pull_down_menu4('Qty_ProdId_' . $listing['products_id'], $qty_array);
	 }

	 $list_box_contents .= '</div></div>';

	 break;
	 case 'MASTER_LIST_OPTIONS':
		 if (tep_has_product_attributes($listing['products_id'])) {
	 $list_box_contents .= '<div class="slaveOption">' . MASTER_OPTIONS_TEXT . '<div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>');
 } else {
 $list_box_contents .= '<div class="slaveOption"><div' . (($slave_id == $listing['products_id']) ? ' class="slave">' : '>');
 }
	 ///////////////////////////////////////////////////////////////////////////
	 // BOF: attribute options
	 $opt_count=0;
 $products_options_name = tep_db_query("select distinct popt.products_options_id, popt.products_options_name from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . $listing['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . $languages_id . "' ORDER by products_options_id");
 while ($products_options_name_values = tep_db_fetch_array($products_options_name)) {
		 $opt_count++;
		 $products_options_array = array();
		 $list_box_contents .= '<b>' . $products_options_name_values['products_options_name'] . '</b><br />' . "\n";
		 $products_options = tep_db_query("select pov.products_options_values_id, pov.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_OPTIONS_VALUES . " pov where pa.products_id = '" . (int)$listing['products_id'] . "' and pa.options_id = '" . (int)$products_options_name_values['products_options_id'] . "' and pa.options_values_id = pov.products_options_values_id and pov.language_id = '" . (int)$languages_id . "'");
		 while ($products_options_values = tep_db_fetch_array($products_options)) {
		 $products_options_array[] = array('id' => $products_options_values['products_options_values_id'], 'text' => $products_options_values['products_options_values_name'], 'style' => '');
		 if ($products_options_values['options_values_price'] != '0') {
			 $products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options_values['price_prefix'] . $currencies->display_price($products_options_values['options_values_price'], tep_get_tax_rate($listing['products_tax_class_id'])) .') ';
		 }
		 }
		 $list_box_contents .= tep_draw_pull_down_menu('id_'.$listing['products_id'].'[' . $products_options_name_values['products_options_id'] . ']', $products_options_array);
		 $list_box_contents .= '<br />';
	 }
	 if($opt_count==0) {
		 $list_box_contents .= MASTER_TEXT_NONE;
	 }
			 $list_box_contents .= '</div></div>';
	 // EOF: attribute options
	 //////////////////////////////////////////////////////////////////////////
break;
 }
 }
 $list_box_contents .= '</div>'; // EOF masterListInner
}
$list_box_contents .= ' </div>' ; // EOF masterListOuter
					 // '</div>'; // EOF infoBoxContainer
   echo $list_box_contents;
 } else {
?>

   <p><?php echo TEXT_NO_PRODUCTS; ?></p>

<?php
 }

 if ( ($listing_split->number_of_rows > 0) && ((MASTER_PREV_NEXT_BAR_LOCATION == '2') || (MASTER_PREV_NEXT_BAR_LOCATION == '3')) ) {
?>

Edited by Tsimi

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×