Jump to content
Jack_mcs

Header Tags SEO

Recommended Posts

But I have a problem with the Social Bookmark code. When I try to share a product page on facebook, facebook automatically gets the title, description and a photograph. The picture is not displayed after installing this contribution. Facebook enters an infinite loop looking for photography and remains so. Only the title and description is added.

Right click on the image and choose properties to find out where it is trying to load the image from and then check to make sure it is there.

Share this post


Link to post
Share on other sites

i was wondering if i missed a code to add, because when i try to make edits in the product items they will not change once i click submit and make the changes, they will continuously stay the same of what the product name is for Product Title Tag, Product Description Tag, and Product Keywords Tag. Is it a configuration I didnt change?

Edited by MrE03

Share this post


Link to post
Share on other sites

i was wondering if i missed a code to add, because when i try to make edits in the product items they will not change once i click submit and make the changes, they will continuously stay the same of what the product name is for Product Title Tag, Product Description Tag, and Product Keywords Tag. Is it a configuration I didnt change?

See the troubleshooting instructions for problems in admin.

Share this post


Link to post
Share on other sites

SPPC + HIDE PRODUCTS SPPC + HEADER TAGS

 

I dont know what should be the correct modification for some lines in catalog/includes/aplication_top.php

 

I need both contributions working, if I replace the code Hide Products for SPPC will not work.

 

Any suggestion??

 

My original code:

// BOF SPPC Hide products and categories from groups
 if (isset($cPath_array)) {
   for ($i=0, $n=sizeof($cPath_array); $i<$n; $i++) {   
     $categories_query = tep_db_query("select categories_name from " . TABLE_CATEGORIES_DESCRIPTION . " cd left join " . TABLE_CATEGORIES . " c using(categories_id) where cd.categories_id = '" . (int)$cPath_array[$i] . "' and language_id = '" . (int)$languages_id . "' and find_in_set('" . $customer_group_id . "', categories_hide_from_groups) = 0");
// EOF SPPC Hide products and categories from groups

 

then

 

// add the products model to the breadcrumb trail
 if (isset($HTTP_GET_VARS['products_id'])) {
// BOF SPPC Hide products and categories from groups
   $model_query = tep_db_query("select p.products_model from " . TABLE_PRODUCTS . " p left join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c using(products_id) left join " . TABLE_CATEGORIES . " c using(categories_id) where p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and find_in_set('".$customer_group_id."', products_hide_from_groups) = 0 and find_in_set('" . $customer_group_id . "', categories_hide_from_groups) = 0");
// EOF SPPC Hide products and categories from groups
   if (tep_db_num_rows($model_query)) {
     $model = tep_db_fetch_array($model_query);
     $breadcrumb->add($model['products_model'], tep_href_link(FILENAME_PRODUCT_INFO, 'cPath=' . $cPath . '&products_id=' . $HTTP_GET_VARS['products_id']));

 

Must be raplaced by this:

      $categories_query = tep_db_query("select categories_htc_title_tag from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$cPath_array[$i] . "' and language_id = '" . (int)$languages_id . "' LIMIT 1");

 

then:

  $products_query = tep_db_query("select pd.products_head_title_tag from " . TABLE_PRODUCTS . " p left join " . TABLE_PRODUCTS_DESCRIPTION . " pd on p.products_id = pd.products_id where p.products_id = '" . (int)$_GET['products_id'] . "' and pd.language_id ='" .  (int)$languages_id . "' LIMIT 1");

Edited by bhbilbao

Share this post


Link to post
Share on other sites

only suggestion is that you have to compare all the modifications made by each contribuion on a line by line basis and combine the changes.

Share this post


Link to post
Share on other sites

This is not directly related to HT SEO, but i have problems getting the CKeditor to work with HT SEO categories description. I have manage to add the editor in the admin, but it wont save the input.

Is there anyone using ckeditor with HT SEO (latest) who can share the code change.

Share this post


Link to post
Share on other sites

Followed the catalog isntructions. But after completed i did not receive the:

Replace me in Page Control under index.php?

 

What must i do now? I rechecked all things!!

I've installed STS 4.5.9

Edited by kanata_82

Share this post


Link to post
Share on other sites

Followed the catalog isntructions. But after completed i did not receive the:

Replace me in Page Control under index.php?

 

What must i do now? I rechecked all things!!

I've installed STS 4.5.9

First, make sure you made the STS changes as detailed in the install file. Then try running the test function to see if it finds anything. If it is still not working, then you will need to add the <head> section code to index.php and turn off STS. If it works, then the problem is with the STS changes needed for the installation. If not, it is with the Header Tags installation.

Share this post


Link to post
Share on other sites

Hi,

 

I am installing Header Tags SEO, the latest version, but have come up against a little problem. I also have installed Enable/Disable categories, and unfortunately both contributions use the same code in application_top.php.

 

I have merged together most of the code (although have yet to test it, so fingers crossed!)but the last bit is stumping me and any help would be very welcome.

 

Original code from the "find this bit of code" in the Install_Catalog file

// add the products model to the breadcrumb trail
 if (isset($HTTP_GET_VARS['products_id'])) {
   $model_query = tep_db_query("select products_model from " . TABLE_PRODUCTS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");
   if (tep_db_num_rows($model_query)) {
     $model = tep_db_fetch_array($model_query);
     $breadcrumb->add($model['products_model'], tep_href_link(FILENAME_PRODUCT_INFO, 'cPath=' . $cPath . '&products_id=' . $HTTP_GET_VARS['products_id']));
   }
 }

 

Replace it with this code from the Install_Catalog file

// add the products name to the breadcrumb trail
if (isset($_GET['products_id'])) {
 $products_query = tep_db_query("select pd.products_head_title_tag from " . TABLE_PRODUCTS . " p left join " . TABLE_PRODUCTS_DESCRIPTION . " pd on p.products_id = pd.products_id where p.products_id = '" . (int)$_GET['products_id'] . "' and pd.language_id ='" .  (int)$languages_id . "' LIMIT 1");
 if (tep_db_num_rows($products_query)) {
   $products = tep_db_fetch_array($products_query);
   $breadcrumb->add($products['products_head_title_tag'], tep_href_link(FILENAME_PRODUCT_INFO, 'cPath=' . $cPath . '&products_id=' . $_GET['products_id']));
 }
} 

 

My modified code which also includes code from Enable / Disable Categories contribution

  if (isset($HTTP_GET_VARS['products_id'])) {
   // START Enable & Disable Categories
   $model_query = tep_db_query("select p.products_model from " . TABLE_PRODUCTS . " p left join " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c on p.products_id = p2c.products_id left join " . TABLE_CATEGORIES . " c on p2c.categories_id = c.categories_id, " . TABLE_PRODUCTS_DESCRIPTION . "  pd where c.categories_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and p.products_id = pd.products_id");
   // END Enable & Disable Categories
   if (tep_db_num_rows($model_query)) {
     $model = tep_db_fetch_array($model_query);
     $breadcrumb->add($model['products_model'], tep_href_link(FILENAME_PRODUCT_INFO, 'cPath=' . $cPath . '&products_id=' . $HTTP_GET_VARS['products_id']));
   }
 }

 

I have noticed that the Header Tags SEO changes the coding of this bit from $model_query to $products_query. Is this bit an important part of the coding for the contribution. I'm guessing it is!

 

Please, please, can anyone give me some advice?

 

Thank you

Share this post


Link to post
Share on other sites

Hi,

 

I am installing Header Tags SEO, the latest version, but have come up against a little problem. I also have installed Enable/Disable categories, and unfortunately both contributions use the same code in application_top.php.

 

I have noticed that the Header Tags SEO changes the coding of this bit from $model_query to $products_query. Is this bit an important part of the coding for the contribution. I'm guessing it is!

Just replace that whole section of code in application_top. And, yes, it is important. Even more so now due to googles recent announcement (see link in my signature regarding breadcrumbs). There will be other places where the code conflicts. You need to remove all reference to the other contribution and be sure to turn it off in admin->Configuration->My Store.

Share this post


Link to post
Share on other sites

i have some problems with html editor for HT SEO (latest). Now i am using ckeditor and have the code for add the editor window.

$category_htc_description_string .= '<br><hr><hr>' . tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']) . ' ' . tep_draw_textarea_field('categories_htc_description[' . $languages[$i]['id'] . ']', 'hard', 30, 5, tep_get_category_htc_description($cInfo->categories_id, $languages[$i]['id']), 'id = products_description[' . $languages[$i]['id'] . '] class="ckeditor"');

 

The editor window is showing, but it mess up the inserted code when it have html tags in it.

 

If i switch back to normal editor i can insert the same text with tags without problems.

 

 

I have this problem before with tinymce and now with ckeditor. With products descriptions and informatio_pages unl. it is working as it should. Only different i can se of the code is that they use stripslashes, but i am not sure where to put this in HT SEO code.

 

Any suggestions how to modyfy code to get it to work

 

The code for information pages and products is included under here.

echo tep_draw_textarea_field('information_description[' . $languages[$i]['id'] . ']', '', '100', '20', (($languages[$i]['id'] == $languages_id) ? stripslashes($edit[information_description]) : tep_get_information_entry($information_id, $languages[$i]['id'], 'information_description')),'id=information_description[' . $languages[$i]['id'] . '] class="ckeditor"');

 

<?php echo tep_draw_textarea_field('products_description[' . $languages[$i]['id'] . ']', 'soft', '70', '10',
(isset($products_description[$languages[$i]['id']]) ? stripslashes($products_description[$languages[$i]['id']]) :
tep_get_products_description($pInfo->products_id, $languages[$i]['id'])),'id = products_description[' .
$languages[$i]['id'] . '] class="ckeditor"'); ?>

Share this post


Link to post
Share on other sites

Hi there

 

Headertags SEO working fine with shop

 

Needed to know how to get SEO to work with Custom Product Builder - http://addons.oscommerce.com/info/6328

 

The product titles showing all the same as the shop name

 

Many thanks


Thanks to all source contributors, 2.3.4 Edge just works fine

https://github.com/gburton/Responsive-osCommerce/archive/master.zip

Share this post


Link to post
Share on other sites

The title should be displayed like this:

 

Category title tag

Category title tag – manufacture name – product title tag

 

But I have a problem with doublet tags “–“ like this

 

Category title tag – manufacture name – - product title tag

And if there is no manufacture name defined: Category title tag - - product title tag

 

Where do I delete this “–“ ?


I'm the owner of a danish gift shop, where you will find gifts, ideas & presents for her & him.

Share this post


Link to post
Share on other sites

new instalation of rc2a, i just add files from catalog_for_new_shop... and in the admin i have this error:

 

1054 - Unknown column 'meta_canonical' in 'field list'

select default_title, default_description, default_keywords, default_logo_text, default_logo_append_group as def_option_0, default_logo_append_category as def_option_1, default_logo_append_manufacturer as def_option_2, default_logo_append_product as def_option_3, meta_google as meta_0, meta_language as meta_1, meta_noodp as meta_2, meta_noydir as meta_3, meta_replyto as meta_4, meta_revisit as meta_5, meta_robots as meta_6, meta_unspam as meta_7, meta_canonical as meta_8 from headertags_default where language_id = '1' LIMIT 1

[TEP STOP]

Share this post


Link to post
Share on other sites

new instalation of rc2a, i just add files from catalog_for_new_shop... and in the admin i have this error:

 

1054 - Unknown column 'meta_canonical' in 'field list'

select default_title, default_description, default_keywords, default_logo_text, default_logo_append_group as def_option_0, default_logo_append_category as def_option_1, default_logo_append_manufacturer as def_option_2, default_logo_append_product as def_option_3, meta_google as meta_0, meta_language as meta_1, meta_noodp as meta_2, meta_noydir as meta_3, meta_replyto as meta_4, meta_revisit as meta_5, meta_robots as meta_6, meta_unspam as meta_7, meta_canonical as meta_8 from headertags_default where language_id = '1' LIMIT 1

[TEP STOP]

 

edit:The file headertags_seo.sql missing

meta_canonical tinyint(1) default 1 NOT NULL

so i just used headertags_seo_install.php, this file has this line and now is ok.

 

headertags_seo.sql file should be updated.

Share this post


Link to post
Share on other sites

The title should be displayed like this:

 

Category title tag

Category title tag – manufacture name – product title tag

 

But I have a problem with doublet tags “–“ like this

 

Category title tag – manufacture name – - product title tag

And if there is no manufacture name defined: Category title tag - - product title tag

 

Where do I delete this “–“ ?

The - only shows if you have the option set to display a field. If the manufacturer name is empty, you will get the extra -. You either need to fill in the missing fields or uncheck the manufacturer checkbox in page control.

Share this post


Link to post
Share on other sites

The - only shows if you have the option set to display a field. If the manufacturer name is empty, you will get the extra -. You either need to fill in the missing fields or uncheck the manufacturer checkbox in page control.

 

I'm running with the manufacture name for known products, and non if the products are unknown.

It should be possible to add "if isset $manufacturename echo..." or make - part of the manufacture name "'- '. $manufacturename" ?

 

I just don't know where its located.

Edited by danic

I'm the owner of a danish gift shop, where you will find gifts, ideas & presents for her & him.

Share this post


Link to post
Share on other sites

I just don't know where its located.

The database call is created in includes/header_tags.php. The code to add the results is in includes/functions/header_tags.php.

Share this post


Link to post
Share on other sites

Line 66 - in includes/functions/header_tags.php

function FillHeaderTagsArray(

 

...

 

$header_tags_array['title'] = ltrim(tep_db_prepare_input(implode(' ' . HEADER_TAGS_SEPARATOR_DESCRIPTION . ' ', $sortOrder['title'])), ' ' . HEADER_TAGS_SEPARATOR_DESCRIPTION);

Result = <title>Ansigtspleje - Urtegaarden - - Ansigtsserum</title>

 

$header_tags_array['title'] = ltrim(tep_db_prepare_input(implode(' ', $sortOrder['title'])), ' ' . HEADER_TAGS_SEPARATOR_DESCRIPTION);

Result = <title>Ansigtspleje - Urtegaarden Ansigtsserum</title>

 

$header_tags_array['title'] = ltrim(tep_db_prepare_input(implode(' - ', $sortOrder['title'])), ' ' . HEADER_TAGS_SEPARATOR_DESCRIPTION);

Result = <title>Ansigtspleje - Urtegaarden - - Ansigtsserum</title>

 

Strange it's - - or non ?

Edited by danic

I'm the owner of a danish gift shop, where you will find gifts, ideas & presents for her & him.

Share this post


Link to post
Share on other sites

Sometimes I link one product from one category to another category.

 

Like this:

Category 1

- product A

- product B

- product C

Category 2

- Product E

- Product F

- Product A (link)

 

The problem is that HT SEO is not always displaying the category_title from the current "selected" category:

So Category 2 Product A (link) is displaying the category_title from Category 1

or Category 1 product A is displaying the category_title from Category 2

 

Can someone explain how this works?

 

Thanks,


I'm the owner of a danish gift shop, where you will find gifts, ideas & presents for her & him.

Share this post


Link to post
Share on other sites

Need some help with seo 3.1.8

 

I'm using an addon called pc builder or product builder

 

How can I get SEO for this page to display all the meta data relevant to page e.g. for every new build a new product is created like eg. www.myshop.com/builder_product_info.php?products_id=350

It shows up in admin to configure SEO tags and does it but it sees all the new custom product builds as the same product

 

How can I append e.g. product_id to the meta title and description?

 

Any help please :'(

 

The page that needs header tags is as follows:

 

<?php
/*
 $Id: builder_product_info.php v 1.1.0 2008/12/05 11:27:54 10c $

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 require('includes/application_top.php');

 require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_BUILDER_PRODUCT_INFO);

// check if tables exist
if (mysql_num_rows(mysql_query("SHOW TABLES LIKE '" . TABLE_BUILDER_OPTIONS . "'"))==1) {
// get builder options
 $cbcomp_query = tep_db_query("select cpb_build_product_status_default, cpb_build_disable_after_carted, cpb_build_preview_single, cpb_use_software, cpb_build_unsort_components from " . TABLE_BUILDER_OPTIONS);
 while ($cbcomp = tep_db_fetch_array($cbcomp_query)){
   $cpb_use_software = $cbcomp['cpb_use_software'];
   $cpb_build_unsort_components= $cbcomp['cpb_build_unsort_components'];
   $cpb_build_disable_after_carted= $cbcomp['cpb_build_disable_after_carted'];
   $cpb_build_product_status_default= $cbcomp['cpb_build_product_status_default'];
 }
// check builder enabled
 if (!$cpb_use_software) {
   tep_redirect(tep_href_link(FILENAME_DEFAULT, '', 'NONSSL'));
 }
}

// if non-builder product then redirect to osC-product_info
 $product_check_query = tep_db_query("select p.builder_product_flag, count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' group by p.products_id");
 $product_check = tep_db_fetch_array($product_check_query);
 if ($product_check['builder_product_flag'] == '0') {
   tep_redirect(tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $_GET['products_id']));
 }
?>

<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<?php
/*** Begin Header Tags SEO ***/
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?>
 <title><?php echo TITLE; ?></title>
<?php
}
/*** End Header Tags SEO ***/
?>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<script language="javascript"><!--
function popupWindow(url) {
 window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
}
//--></script>
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0">
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->

<!-- body //-->
<table border="0" width="100%" cellspacing="3" cellpadding="3">
 <tr>
   <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2">
<!-- left_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
<!-- left_navigation_eof //-->
   </table></td>
<!-- body_text //-->
   <td width="100%" valign="top"><?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_SHOPPING_CART, 'action=add_build')); ?><table border="0" width="100%" cellspacing="0" cellpadding="0">
<?php
 if ($product_check['total'] < 1) {
?>
     <tr>
       <td><?php new infoBox(array(array('text' => TEXT_PRODUCT_NOT_FOUND))); ?></td>
     </tr>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
     </tr>
     <tr>
       <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
         <tr class="infoBoxContents">
           <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
             <tr>
               <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
               <td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_DEFAULT) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?></td>
               <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
             </tr>
           </table></td>
         </tr>
       </table></td>
     </tr>
<?php
 } else {
   $product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
   $product_info = tep_db_fetch_array($product_info_query);

   tep_db_query("update " . TABLE_PRODUCTS_DESCRIPTION . " set products_viewed = products_viewed+1 where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and language_id = '" . (int)$languages_id . "'");

   if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
     $products_price = '<s>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</s> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';
   } else {
     $products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
   }

   if (tep_not_null($product_info['products_model'])) {
     $products_name = $product_info['products_name'] . '<br><span class="smallText">[' . $product_info['products_model'] . ']</span>';
   } else {
     $products_name = $product_info['products_name'];
   }
?>
     <tr>
       <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
         <tr>
           <td class="pageHeading" valign="top"><?php echo $products_name; ?></td>
           <td class="pageHeading" align="right" valign="top">
<?php
if ((int)$product_info['products_price'] > 0) {
       echo $products_price;
} else {
       $products_options_name_query = tep_db_query("select distinct sum(options_values_price) from " . TABLE_PRODUCTS_ATTRIBUTES . " where products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' group by products_id");
       $products_options_name = tep_db_fetch_array($products_options_name_query);
       echo $currencies->display_price($products_options_name['sum(options_values_price)'],  tep_get_tax_rate($product_info['products_tax_class_id']));
}
?>
           </td>
         </tr>
       </table></td>
     </tr>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
     </tr>
     <tr>
       <td class="main">
<?php
   if (tep_not_null($product_info['products_image'])) {
?>
         <table border="0" cellspacing="0" cellpadding="2" align="right">
           <tr>
             <td align="center" class="smallText">
<script language="javascript"><!--
document.write('<?php echo '<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');
//--></script>
<noscript>
<?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>
</noscript>
             </td>
           </tr>
         </table>
<?php
   }
?>
         <p><?php echo stripslashes($product_info['products_description']); ?></p>
<?php
   $products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
   $products_attributes = tep_db_fetch_array($products_attributes_query);
   if ($products_attributes['total'] > 0) {
?>
         <table border="0" cellspacing="0" cellpadding="2">
           <tr>
             <td class="main" colspan="2"><?php echo TEXT_PRODUCT_OPTIONS; ?></td>
           </tr>
<?php
     if ($cpb_build_unsort_components) {
       $products_options_name_query = tep_db_query("select distinct patrib.options_values_price, popt.products_options_id, popt.products_options_name from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' group by popt.products_options_id");
     } else {
       $products_options_name_query = tep_db_query("select distinct sum(patrib.options_values_price), popt.products_options_id, popt.products_options_name from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' group by popt.products_options_name");
     }
     while ($products_options_name = tep_db_fetch_array($products_options_name_query)) {
       $products_options_array = array();
         $products_options_query = tep_db_query("select pov.products_options_values_id, pov.products_options_values_name, pov.catalog_products_id from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_OPTIONS_VALUES . " pov where pa.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pa.options_id = '" . (int)$products_options_name['products_options_id'] . "' and pa.options_values_id = pov.products_options_values_id and pov.language_id = '" . (int)$languages_id . "'");

       while ($products_options = tep_db_fetch_array($products_options_query)) {
         $component_name = $products_options['products_options_values_name'];
         $component_id = $products_options['products_options_values_id'];
         $componentcat_id = $products_options['catalog_products_id'];

       }
       echo tep_draw_hidden_field('id[' . $products_options_name['products_options_id'] . ']', $component_id);
?>
           <tr>
             <td class="main" align="right"><?php echo $products_options_name['products_options_name'] . ':'; ?></td>
             <td class="main"><a href="<?php echo tep_href_link(FILENAME_BUILDER_COMPONENT_INFO, 'products_id=' . $componentcat_id, 'NONSSL', true, false); ?>" onClick="javascript:window.open(this.href,'','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=600,height=600,screenX=150,screenY=150,top=150,left=150');return(false);"><?php echo $component_name; ?></a></td>
           </tr>
<?php
     }
?>
         </table>
<?php
   }
?>
       </td>
     </tr>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
     </tr>
     <tr>
       <td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added'])); ?></td>
     </tr>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
     </tr>
<?php
if ($product_info['products_quantity'] > 0) {
?>
     <tr>
       <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
         <tr class="infoBoxContents">
           <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
             <tr>
               <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>

               <td class="main" align="right"><?php echo tep_draw_hidden_field('uncloaked_build', $cpb_build_product_status_default) . tep_draw_hidden_field('disable_build', $cpb_build_disable_after_carted) . tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?></td>
               <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
             </tr>
           </table></td>
         </tr>
       </table></td>
     </tr>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
     </tr>
<?php
}
?>
     <tr>
       <td>
<?php
 }
?>
       </td>
     </tr>
   </table></form></td>
<!-- body_text_eof //-->
   <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2">
<!-- right_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_right.php'); ?>
<!-- right_navigation_eof //-->
   </table></td>
 </tr>
</table>
<!-- body_eof //-->

<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
<br>
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>


Thanks to all source contributors, 2.3.4 Edge just works fine

https://github.com/gburton/Responsive-osCommerce/archive/master.zip

Share this post


Link to post
Share on other sites

Hello,

 

I have just installed Header Tags SEO v3.1.8 and I wonder how to control title, description and keywords on a category page. Can you help me ?

I works fine for a product page.

 

Thanks

Share this post


Link to post
Share on other sites

I'm using an addon called pc builder or product builder

 

How can I get SEO for this page to display all the meta data relevant to page e.g. for every new build a new product is created like eg. www.myshop.com/builder_product_info.php?products_id=350

Use the pseudo page option.

Share this post


Link to post
Share on other sites

I have just installed Header Tags SEO v3.1.8 and I wonder how to control title, description and keywords on a category page. Can you help me ?

I works fine for a product page.

You control it via page control for index.php. For more details see the dozen or so posts regarding this in this thread.

Share this post


Link to post
Share on other sites

Greetings, am stuck trying to install this contribution HeaderTags_SEO_V_3.1.8, but I keep getting an unexpected case error, I have had previously installed a product sort contribution and the admin/categories.php was somewhat altered, I have spent 2 days trying to track this down(sorry I have very limited knowledge in coding)and think I have found where I have gone wrong.

 

The existing snippet

<?php
 } elseif ($action == 'new_product_preview') {
/*   if (tep_not_null($HTTP_POST_VARS)) {
     $pInfo = new objectInfo($HTTP_POST_VARS);
     $products_name = $HTTP_POST_VARS['products_name'];
     $products_description = $HTTP_POST_VARS['products_description'];
     $products_url = $HTTP_POST_VARS['products_url'];
   } else {
     $product_query = tep_db_query("select p.products_id, pd.language_id, pd.products_name, pd.products_description, pd.products_url, p.products_quantity, p.products_model, p.products_image, p.products_price, p.products_weight, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status, p.manufacturers_id  from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = pd.products_id and p.products_id = '" . (int)$HTTP_GET_VARS['pID'] . "'");
     $product = tep_db_fetch_array($product_query);
*/	  

if (tep_not_null($HTTP_POST_VARS)) {
     $pInfo = new objectInfo($HTTP_POST_VARS);
     $products_name = $HTTP_POST_VARS['products_name'];
     $products_description = $HTTP_POST_VARS['products_description'];
     $products_url = $HTTP_POST_VARS['products_url'];
// BOF Product Sort
     $products_sort_order = $HTTP_POST_VARS['products_sort_order'];
   } else {
     $product_query = tep_db_query("select p.products_id, pd.language_id, pd.products_name, pd.products_description, pd.products_url, p.products_quantity, p.products_model, p.products_image, p.products_price, p.products_weight, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status, p.manufacturers_id, p.products_sort_order from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = pd.products_id and p.products_id = '" . (int)$HTTP_GET_VARS['pID'] . "'");
// EOF Product Sort	  
  $product = tep_db_fetch_array($product_query);

     $pInfo = new objectInfo($product);
     $products_image_name = $pInfo->products_image;
   }

   $form_action = (isset($HTTP_GET_VARS['pID'])) ? 'update_product' : 'insert_product';

   echo tep_draw_form($form_action, FILENAME_CATEGORIES, 'cPath=' . $cPath . (isset($HTTP_GET_VARS['pID']) ? '&pID=' . $HTTP_GET_VARS['pID'] : '') . '&action=' . $form_action, 'post', 'enctype="multipart/form-data"');

   $languages = tep_get_languages();
   for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
     if (isset($HTTP_GET_VARS['read']) && ($HTTP_GET_VARS['read'] == 'only')) {
       $pInfo->products_name = tep_get_products_name($pInfo->products_id, $languages[$i]['id']);
       $pInfo->products_description = tep_get_products_description($pInfo->products_id, $languages[$i]['id']);
       $pInfo->products_url = tep_get_products_url($pInfo->products_id, $languages[$i]['id']);
     } else {
       $pInfo->products_name = tep_db_prepare_input($products_name[$languages[$i]['id']]);
       $pInfo->products_description = tep_db_prepare_input($products_description[$languages[$i]['id']]);
       $pInfo->products_url = tep_db_prepare_input($products_url[$languages[$i]['id']]);
     }
?>

 

and what I am trying to insert into it

<!-- /*** Begin Header Tags SEO ***/ //-->     
<?php
 } elseif ($action == 'new_product_preview') {
   if (tep_not_null($HTTP_POST_VARS)) {
     $pInfo = new objectInfo($HTTP_POST_VARS);
     $products_name = $HTTP_POST_VARS['products_name'];
     $products_description = $HTTP_POST_VARS['products_description'];
     $products_head_title_tag = $HTTP_POST_VARS['products_head_title_tag'];
     $products_head_desc_tag = $HTTP_POST_VARS['products_head_desc_tag'];
     $products_head_keywords_tag = $HTTP_POST_VARS['products_head_keywords_tag'];
     $products_url = $HTTP_POST_VARS['products_url'];
   } else {
     $product_query = tep_db_query("select p.products_id, pd.language_id, pd.products_name, pd.products_description, pd.products_head_title_tag, pd.products_head_desc_tag, pd.products_head_keywords_tag, pd.products_url, p.products_quantity, p.products_model, p.products_image, p.products_price, p.products_weight, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status, p.manufacturers_id  from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_id = pd.products_id and p.products_id = '" . (int)$HTTP_GET_VARS['pID'] . "'");
     $product = tep_db_fetch_array($product_query); 
/*** End Header Tags SEO ***/

 

is it possible to merge that into the existing code?

 

Am really stuck and any help would be greatly appreciated.

Edited by kolakubes

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

×