Jump to content
Sign in to follow this  
Farrukh

[Contribution] Header Tags Controller for Admin MS 2.2

Recommended Posts

Bug 1: When you delete meta content pages, it does not translate the code correctly in the process and resaves english/header_tags.php with a truncated start, and displays PHP code all over the pages.

 

Everything above "WebMakers.com" in the below header_tags.php file is deleted.

 

This is what is being deleted automatically:

 

<?php
// /catalog/includes/languages/english/header_tags.php
//

 

(catalog/includes/languages/english/header_tags.php error)

Bug 2: When creating a new meta-content page (in this case, for shipping.php), the page will not appear.

The correct code seems to be writing to catalog/includes/header_tags.php.

Here's the code it doesn't like:

 

// shipping.php
?case (strstr($_SERVER['PHP_SELF'],FILENAME_SHIPPING) or strstr($PHP_SELF, FILENAME_SHIPPING) ):
? $tags_array = tep_header_tag_page(HTTA_SHIPPING, HEAD_TITLE_TAG_SHIPPING,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? HTDA_SHIPPING, HEAD_DESC_TAG_SHIPPING,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? HTKA_SHIPPING, HEAD_KEY_TAG_SHIPPING );
? break;

 

If I take the above code out of catalog/includes/header_tags.php, the page will reapper, but of course, will only draw from the Default meta content.

Both of these files set to chmod 777.

 

If these fixes have been posted, please provide the link! Thanks.

1 - Others have reported this problem but I cannot reproduce it. I suspect it is how the text is being entered since it doesn't seem to happen after the person gets used to the program. Of course, it shouldn't happen at all but if I can't reporduce it, I can't fix it.

 

2 - There is noting wrong with the above code. Maybe the code in the english/header_tags.php file has a problem. You could try going into both header_tags files and copy the exiting code and then repname it for shipping. If it works, then you might be able to determine where the problem is at.

 

Jack

Share this post


Link to post
Share on other sites
Bug 1: When you delete meta content pages, it does not translate the code correctly in the process and resaves english/header_tags.php with a truncated start, and displays PHP code all over the pages.

 

Everything above "WebMakers.com" in the below header_tags.php file is deleted.

 

This is what is being deleted automatically:

 

<?php
// /catalog/includes/languages/english/header_tags.php
//

 

(catalog/includes/languages/english/header_tags.php error)

Bug 2: When creating a new meta-content page (in this case, for shipping.php), the page will not appear.

The correct code seems to be writing to catalog/includes/header_tags.php.

Here's the code it doesn't like:

 

// shipping.php
?case (strstr($_SERVER['PHP_SELF'],FILENAME_SHIPPING) or strstr($PHP_SELF, FILENAME_SHIPPING) ):
? $tags_array = tep_header_tag_page(HTTA_SHIPPING, HEAD_TITLE_TAG_SHIPPING,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? HTDA_SHIPPING, HEAD_DESC_TAG_SHIPPING,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? HTKA_SHIPPING, HEAD_KEY_TAG_SHIPPING );
? break;

 

If I take the above code out of catalog/includes/header_tags.php, the page will reapper, but of course, will only draw from the Default meta content.

Both of these files set to chmod 777.

 

If these fixes have been posted, please provide the link! Thanks.

 

Bug 3:

the edited catalog/product_info.php does not allow the product pages to appear.

 

I do have a heavily modified product_info.php, but it's just a little snippet of code to add??

 

Here's what I have that crashes the product pages with the Header Tags Controller snippet added:

<?php
/*
 $Id: product_info.php,v 1.97 2003/07/01 14:34:54 hpdl Exp $

 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_PRODUCT_INFO);

 $product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
 $product_check = tep_db_fetch_array($product_check_query);
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<?php
// BOF: WebMakers.com Changed: Header Tag Controller v2.5.2
// Replaced by header_tags.php
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?> 
 <title><?php echo TITLE; ?></title>
<?php
}
// EOF: WebMakers.com Changed: Header Tag Controller v2.5.2
?>
<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,res
izable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,le
ft=150')
}
//--></script>

 

Jack_mcs, thanks for the advice on Bug 1 & 2

Share this post


Link to post
Share on other sites
I don't understand why you posted your categories file. The change you needed make was in the fill tags file.

 

Jack

Hi Jack, this is your post from the other thread.

The categories tags can be changed in admin->catalog by editing the category. To have fill_tags.php skip the categories, edit the fill_tags file and remove the section of code having to do with categories (only about 5 lines).

 

Jack

So I edited the fill tags file, but could not find where to change the metatags/keywords etc for the individual categories.

Thats why I posted my Categories file. I assumed that was the file you was advising me to edit.

Since then however I realised you meant actually in my admin control panel.

Sorry for the confusion.

Thanks, Lee.

Share this post


Link to post
Share on other sites

I had this same problem, caused by deleting any meta-content using the admin drop down menu. Something is causing that feature to truncating the top off of english/header_tags.php, spilling code all over the pages.

 

I've started another post on this, next page.

Share this post


Link to post
Share on other sites

Is it possible to only use swedish/header_tags.php, english/header_tags.php and fill_tags.php and not the admin at all? Are those three files the only ones that need to be modified?

Share this post


Link to post
Share on other sites
Is it possible to only use swedish/header_tags.php, english/header_tags.php and fill_tags.php and not the admin at all? Are those three files the only ones that need to be modified?

Do you mean to have a working Header Tags installaton? If so, then yes, that should work. You won't have any way to use the categories description and any changes you need to make to your titles and meta tags will need to be done by editing the files. Other than that, it should work OK.

 

Jack

Share this post


Link to post
Share on other sites

I've started the process to install header tags controller on two sites that I've recently taken over. I d/l the latest version found in the contribution section and there seems to be somethings missing from this d/l. First of all there are no db files. In the previous version I have, which is 2.5.2 there are two folders that are not in the latest version, auto_insall and the db_files. Do I grab these folders and just use them with the updated version or can someone provide me with either a d/l link or send me the correct folders for this version? Any assistance here would be greatly appreciated.

 

Thanks in advance

 

Ruth in AZ

Share this post


Link to post
Share on other sites
I've started the process to install header tags controller on two sites that I've recently taken over.  I d/l the latest version found in the contribution section and there seems to be somethings missing from this d/l.  First of all there are no db files.  In the previous version I have, which is 2.5.2 there are two folders that are not in the latest version, auto_insall and the db_files.  Do I grab these folders and just use them with the updated version or can someone provide me with either a d/l link or send me the correct folders for this version?  Any assistance here would be greatly appreciated.

 

Thanks in advance

 

Ruth in AZ

You should be using the 2.5.4 version. The one labeled Contrib Installer does not belong there and should not be used unless you want to use that option.

 

Jack

Share this post


Link to post
Share on other sites

I have uploaded a new version.Here are the main changes:

 

-> Remove the meta tag reply-to (again). It was added back by msitake.

-> AutoInstall instructions didn't explain that a directory needed to be created. Added that instruction.

-> Added fill_tags to admin tool.

-> Fixed problem with admin->English page corrupting the english/header_tags.php file.

-> Fixed problem with admin->Text page corrupting the includes/header_tags.php file.

-> Added text to admin->Header Tags section.

-> Added popup to explain switches.

-> Removed the fill tags directory from the archive.

 

I think the problems with the files being corrupted by the admin tool are fixed with this version. I would appreciate it if anyone that was having that problem would let me know it the problem still exists.

 

Jack

Share this post


Link to post
Share on other sites

Hello i need your help

I just installed the latest version 2.5.4 in a clean shop an it works perfect.

 

After that i installed the same version to another shop wich uses sts Tempalte and then it works allmost perfect.

I explain.

i can see the the header Tag title ,the header tag description and the header tag keyword to all the pages except

to the following pages

catalog/product_info.php

http://127.0.0.1/catalog/index.php?cPath=3&osCsid=

http://127.0.0.1/catalog/index.php?cPath=3_10

http://127.0.0.1/catalog/product_info.php?...&products_id=12

 

Does anyone knows why does it happening?

I followed all the instructions without result

 

could you please tell me how i can fix it

is this normal?

Share this post


Link to post
Share on other sites

Jack, how would I update my current version of 2.5.4 to 2.5.5?

I am quite happy with the contib at the moment but would like the fix for the corrupting of the header_tags.php.

Share this post


Link to post
Share on other sites
Do you mean to have a working Header Tags installaton? If so, then yes, that should work. You won't have any way to use the categories description and any changes you need to make to your titles and meta tags will need to be done by editing the files. Other than that, it should work OK.

 

Jack

 

Yes I meant with a working installation, and disable the Header Tags admin pages. Where are the categories description stored?

Share this post


Link to post
Share on other sites
Hello i need your help

I just installed the latest version 2.5.4 in a clean shop an it works perfect.

 

After that i installed the same version to another shop wich uses sts Tempalte  and then it works allmost perfect.

I explain.

i can see the the header Tag title ,the header tag description and the header tag keyword to all the pages except

to the following pages

catalog/product_info.php

http://127.0.0.1/catalog/index.php?cPath=3&osCsid=

http://127.0.0.1/catalog/index.php?cPath=3_10

http://127.0.0.1/catalog/product_info.php?...&products_id=12

 

Does anyone knows why does it happening?

I followed all the instructions without result

 

could you please tell me how i can fix it

is this normal?

 

Have you got <title></title> in the STS template? If so, remove them but keep <!--$headcontent--> below <head>. They should inform in the STS read me that Header Tags Controller doesnt work with title tags in the template..

Share this post


Link to post
Share on other sites
Jack, how would I update my current version of 2.5.4 to 2.5.5?

I am quite happy with the contib at the moment but would like the fix for the corrupting of the header_tags.php.

There are update instructions in the update Docs of the archive. Look for the one name Update_from_V_2.5.4_to_V_2.5.5.txt.

 

Jack

Share this post


Link to post
Share on other sites
Yes I meant with a working installation, and disable the Header Tags admin pages. Where are the categories description stored?

In the database.

 

Jack

Share this post


Link to post
Share on other sites
In the database.

 

Jack

 

Ok. It would be great if I in a forthcoming version can modify header_tags.php for several languages in admin without having to change admin language. Just like it is possible to define meta tags for several languages in the admin products page.

Share this post


Link to post
Share on other sites

Hi All,

 

I have installed the above contribution and all is working fine except the following problems:

 

All the HTML code which is rendered is truncating from top. Something is truncating the <HEAD> tag but the end </HEAD> tag is there.

 

Top of the page I get about 4 empty lines and then this:

 

 

 

 

<!-- BOF: Generated Meta Tags -->

<META NAME="Reply-to" CONTENT="info@melworks.com.au">

<title> Melworks Beads and Craft - </title>

<META NAME="Description" Content="Melworks Beads and Craft - is a Melbourne Australia based online direct to public retail and wholesale discount bead shop. We specialise in fashion glass beads, metal, cloisonne, gemstones and jewellery findings. ">

<META NAME="Keywords" CONTENT=" Melworks Beads and Craft - Australia">

<!-- EOF: Generated Meta Tags -->

 

 

 

<base href="http://melworks.com.au/catalog/">

<link rel="stylesheet" type="text/css" href="stylesheet.css">

</head>

Share this post


Link to post
Share on other sites

Look at your index.php file and make sure you didn't copy/paste over the wrong code.

 

Jack

Share this post


Link to post
Share on other sites

hey guys, this is an excellet contribution!!

 

i'm sure this problem is due to me overlooking something, but everything appears to work perfectly, except the "title" i specify in: "Products Page Title:" doesn't show in the title bar.

 

and i may be blind, but i don't see: "Page Header Description:" or "Product Keywords:" when i right click & view source.

 

all i can see is the data i specified in the 'Text Control' areas for "Default Title" and whatnot

 

which file should i look in, to make sure i didn't miss an edit or something?

 

here's an example of what does show:

<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">

<html dir="LTR" lang="en">

<head>

 

  <title> default page name</title>

  <META NAME="Description" Content="default description">

  <META NAME="Keywords" CONTENT="default,site,keywords">

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<!-- EOF: Generated Meta Tags -->

<base href="http://www.mywebsiteurl.com/">

<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,res

izable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,le

ft=150')

}

//--></script>

</head>

<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0">

<!-- header //-->

Share this post


Link to post
Share on other sites

my index.php:

<?php
/*
 $Id: index.php,v 1.1 2003/06/11 17:37:59 hpdl Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 require_once('includes/application_top.php');

//SEF BEGIN
 if (isset($HTTP_GET_VARS['products_id'])){

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

   $product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
   $product_check = tep_db_fetch_array($product_check_query);
   
 } else {
//SEF END

// the following cPath references come from application_top.php
   $category_depth = 'top';
   if (isset($cPath) && tep_not_null($cPath)) {
     $categories_products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");
     $cateqories_products = tep_db_fetch_array($categories_products_query);
     if ($cateqories_products['total'] > 0) {
       $category_depth = 'products'; // display products
     } else {
       $category_parent_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$current_category_id . "'");
       $category_parent = tep_db_fetch_array($category_parent_query);
       if ($category_parent['total'] > 0) {
         $category_depth = 'nested'; // navigate through the categories
       } else {
         $category_depth = 'products'; // category has no products, but display the 'no products' message
       }
     }
   }

   require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_DEFAULT);
}
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>

<?php
// BOF: WebMakers.com Changed: Header Tag Controller v2.5.2
// Replaced by header_tags.php
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?> 
 <title><?php echo TITLE; ?></title>
<?php
}
// EOF: WebMakers.com Changed: Header Tag Controller v2.5.2
?>
<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,res
izable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,le
ft=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 //--> 
   <?php 
//SEF BEGIN
if (isset($HTTP_GET_VARS['products_id'])){
?> 
   <td width="100%" valign="top"><?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?> 
     <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_status = '1' and 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 echo $products_price; ?></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
     $products_options_name_query = 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='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' order 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, pa.options_values_price, pa.price_prefix 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)) {
         $products_options_array[] = array('id' => $products_options['products_options_values_id'], 'text' => $products_options['products_options_values_name']);
         if ($products_options['options_values_price'] != '0') {
           $products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options['price_prefix'] . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') ';
         }
       }

       if (isset($cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']])) {
         $selected_attribute = $cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']];
       } else {
         $selected_attribute = false;
       }
?> 
             <tr> 
               <td class="main"><?php echo $products_options_name['products_options_name'] . ':'; ?></td> 
               <td class="main"><?php echo tep_draw_pull_down_menu('id[' . $products_options_name['products_options_id'] . ']', $products_options_array, $selected_attribute); ?></td> 
             </tr> 
             <?php
     }
?> 
           </table> 
           <?php
   }
?> </td> 
       </tr> 
       <tr> 
         <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
       </tr> 
       <?php
   $reviews_query = tep_db_query("select count(*) as count from " . TABLE_REVIEWS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");
   $reviews = tep_db_fetch_array($reviews_query);
   if ($reviews['count'] > 0) {
?> 
       <tr> 
         <td class="main"><?php echo TEXT_CURRENT_REVIEWS . ' ' . $reviews['count']; ?></td> 
       </tr> 
       <tr> 
         <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
       </tr> 
       <?php
   }

   if (tep_not_null($product_info['products_url'])) {
?> 
       <tr> 
         <td class="main"><?php echo sprintf(TEXT_MORE_INFORMATION, tep_href_link(FILENAME_REDIRECT, 'action=url&goto=' . urlencode($product_info['products_url']), 'NONSSL', true, false)); ?></td> 
       </tr> 
       <tr> 
         <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
       </tr> 
       <?php
   }

   if ($product_info['products_date_available'] > date('Y-m-d H:i:s')) {
?> 
       <tr> 
         <td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available'])); ?></td> 
       </tr> 
       <?php
   } else {
?> 
       <tr> 
         <td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added'])); ?></td> 
       </tr> 
       <?php
   }
?> 
       <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 class="main"><?php echo '<a href="' . tep_href_link(FILENAME_PRODUCT_REVIEWS, tep_get_all_get_params()) . '">' . tep_image_button('button_reviews.gif', IMAGE_BUTTON_REVIEWS) . '</a>'; ?></td> 
                     <td class="main" align="right"><?php echo 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> 
       <tr> 
         <td> <?php
   if ((USE_CACHE == 'true') && empty($SID)) {
     echo tep_cache_also_purchased(3600);
   } else {
     include(DIR_WS_MODULES . FILENAME_ALSO_PURCHASED_PRODUCTS);
   }
 }
?> </td> 
       </tr> 
     </table> 
     </form></td> 
   <?php
} else {
//SEF END
?> <?php
   if ($category_depth == 'nested') {
      $category_query = tep_db_query("select cd.categories_name, c.categories_image, cd.categories_htc_title_tag, cd.categories_htc_description from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'");
$category = tep_db_fetch_array($category_query);
?> 
   <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> 
       <tr> 
         <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> 
             <tr> 
          <td><h1><?php echo $category['categories_htc_title_tag']; ?></h1></td>
          <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . $category['categories_image'], $category['categories_name'], HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
         </tr>
          <?php if (tep_not_null($category['categories_htc_description'])) { ?> 
         <tr>
          <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
         </tr>
         <tr>
          <td><h2><?php echo $category['categories_htc_description']; ?></h2></td>
         </tr>
         <?php } ?>
           </table></td> 
       </tr> 
       <tr> 
         <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
       </tr> 
       <tr> 
         <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> 
             <tr> 
               <td><table border="0" width="100%" cellspacing="0" cellpadding="2"> 
                   <tr> <?php
	 if (isset($cPath) && strpos('_', $cPath)) {
// check to see if there are deeper categories within the current category
   $category_links = array_reverse($cPath_array);
   for($i=0, $n=sizeof($category_links); $i<$n; $i++) {
  	 $categories_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "'");
  	 $categories = tep_db_fetch_array($categories_query);
  	 if ($categories['total'] < 1) {
     // do nothing, go through the loop
  	 } else {
     $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
     break; // we've found the deepest category the customer is in
  	 }
   }
	 } else {
   $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
	 }

	 $number_of_categories = tep_db_num_rows($categories_query);

	 $rows = 0;
	 while ($categories = tep_db_fetch_array($categories_query)) {
   $rows++;
   $cPath_new = tep_get_path($categories['categories_id']);
   $width = (int)(100 / MAX_DISPLAY_CATEGORIES_PER_ROW) . '%';
   echo '                <td align="center" class="smallText" width="' . $width . '" valign="top"><a href="' . tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">' . tep_image(DIR_WS_IMAGES . $categories['categories_image'], $categories['categories_name'], SUBCATEGORY_IMAGE_WIDTH, SUBCATEGORY_IMAGE_HEIGHT) . '<br>' . $categories['categories_name'] . '</a></td>' . "\n";
   if ((($rows / MAX_DISPLAY_CATEGORIES_PER_ROW) == floor($rows / MAX_DISPLAY_CATEGORIES_PER_ROW)) && ($rows != $number_of_categories)) {
  	 echo '              </tr>' . "\n";
  	 echo '              <tr>' . "\n";
   }
	 }

// needed for the new products module shown below
	 $new_products_category_id = $current_category_id;
?> </tr> 
                 </table></td> 
             </tr> 
             <tr> 
               <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
             </tr> 
             <tr> 
               <td><?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?></td> 
             </tr> 
           </table></td> 
       </tr> 
     </table></td> 
   <?php
 } elseif ($category_depth == 'products' || isset($HTTP_GET_VARS['manufacturers_id'])) {
// create column list
	 $define_list = array('PRODUCT_LIST_MODEL' => PRODUCT_LIST_MODEL,
             'PRODUCT_LIST_NAME' => PRODUCT_LIST_NAME,
             'PRODUCT_LIST_MANUFACTURER' => PRODUCT_LIST_MANUFACTURER,
             'PRODUCT_LIST_PRICE' => PRODUCT_LIST_PRICE,
             'PRODUCT_LIST_QUANTITY' => PRODUCT_LIST_QUANTITY,
             'PRODUCT_LIST_WEIGHT' => PRODUCT_LIST_WEIGHT,
             'PRODUCT_LIST_IMAGE' => PRODUCT_LIST_IMAGE,
             'PRODUCT_LIST_BUY_NOW' => PRODUCT_LIST_BUY_NOW);

	 asort($define_list);

	 $column_list = array();
	 reset($define_list);
	 while (list($key, $value) = each($define_list)) {
   if ($value > 0) $column_list[] = $key;
	 }

	 $select_column_list = '';

	 for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
   switch ($column_list[$i]) {
  	 case 'PRODUCT_LIST_MODEL':
     $select_column_list .= 'p.products_model, ';
     break;
  	 case 'PRODUCT_LIST_NAME':
     $select_column_list .= 'pd.products_name, ';
     break;
  	 case 'PRODUCT_LIST_MANUFACTURER':
     $select_column_list .= 'm.manufacturers_name, ';
     break;
  	 case 'PRODUCT_LIST_QUANTITY':
     $select_column_list .= 'p.products_quantity, ';
     break;
  	 case 'PRODUCT_LIST_IMAGE':
     $select_column_list .= 'p.products_image, ';
     break;
  	 case 'PRODUCT_LIST_WEIGHT':
     $select_column_list .= 'p.products_weight, ';
     break;
   }
	 }

// show the products of a specified manufacturer
	 if (isset($HTTP_GET_VARS['manufacturers_id'])) {
   if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only a specific category
  	 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "'";
   } else {
// We show them all
  	 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'";
   }
	 } else {
// show the products in a given categorie
   if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only specific catgeory
  	 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
   } else {
// We show them all
  	 $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
   }
	 }

	 if ( (!isset($HTTP_GET_VARS['sort'])) || (!ereg('[1-8][ad]', $HTTP_GET_VARS['sort'])) || (substr($HTTP_GET_VARS['sort'], 0, 1) > sizeof($column_list)) ) {
   for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
  	 if ($column_list[$i] == 'PRODUCT_LIST_NAME') {
     $HTTP_GET_VARS['sort'] = $i+1 . 'a';
     $listing_sql .= " order by pd.products_name";
     break;
  	 }
   }
	 } else {
   $sort_col = substr($HTTP_GET_VARS['sort'], 0 , 1);
   $sort_order = substr($HTTP_GET_VARS['sort'], 1);
   $listing_sql .= ' order by ';
   switch ($column_list[$sort_col-1]) {
  	 case 'PRODUCT_LIST_MODEL':
     $listing_sql .= "p.products_model " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
     break;
  	 case 'PRODUCT_LIST_NAME':
     $listing_sql .= "pd.products_name " . ($sort_order == 'd' ? 'desc' : '');
     break;
  	 case 'PRODUCT_LIST_MANUFACTURER':
     $listing_sql .= "m.manufacturers_name " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
     break;
  	 case 'PRODUCT_LIST_QUANTITY':
     $listing_sql .= "p.products_quantity " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
     break;
  	 case 'PRODUCT_LIST_IMAGE':
     $listing_sql .= "pd.products_name";
     break;
  	 case 'PRODUCT_LIST_WEIGHT':
     $listing_sql .= "p.products_weight " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
     break;
  	 case 'PRODUCT_LIST_PRICE':
     $listing_sql .= "final_price " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
     break;
   }
	 }
  $category_query = tep_db_query("select cd.categories_htc_title_tag, cd.categories_htc_description from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'");
  $category = tep_db_fetch_array($category_query); 
   ?>
   <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0">
     <tr>
       <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
         <tr>
           <td><h1><?php echo $category['categories_htc_title_tag']; ?></h1></td>
               <?php
// optional Product List Filter
	 if (PRODUCT_LIST_FILTER > 0) {
   if (isset($HTTP_GET_VARS['manufacturers_id'])) {
  	 $filterlist_sql = "select distinct c.categories_id as id, cd.categories_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where p.products_status = '1' and p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and p2c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' order by cd.categories_name";
   } else {
  	 $filterlist_sql= "select distinct m.manufacturers_id as id, m.manufacturers_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$current_category_id . "' order by m.manufacturers_name";
   }
   $filterlist_query = tep_db_query($filterlist_sql);
   if (tep_db_num_rows($filterlist_query) > 1) {
  	 echo '            <td align="center" class="main">' . tep_draw_form('filter', FILENAME_DEFAULT, 'get') . TEXT_SHOW . ' ';
  	 if (isset($HTTP_GET_VARS['manufacturers_id'])) {
     echo tep_draw_hidden_field('manufacturers_id', $HTTP_GET_VARS['manufacturers_id']);
     $options = array(array('id' => '', 'text' => TEXT_ALL_CATEGORIES));
  	 } else {
     echo tep_draw_hidden_field('cPath', $cPath);
     $options = array(array('id' => '', 'text' => TEXT_ALL_MANUFACTURERS));
  	 }
  	 echo tep_draw_hidden_field('sort', $HTTP_GET_VARS['sort']);
  	 while ($filterlist = tep_db_fetch_array($filterlist_query)) {
     $options[] = array('id' => $filterlist['id'], 'text' => $filterlist['name']);
  	 }
  	 echo tep_draw_pull_down_menu('filter_id', $options, (isset($HTTP_GET_VARS['filter_id']) ? $HTTP_GET_VARS['filter_id'] : ''), 'onchange="this.form.submit()"');
  	 echo '</form></td>' . "\n";
   }
	 }

// Get the right image for the top-right
	 $image = DIR_WS_IMAGES . 'table_background_list.gif';
	 if (isset($HTTP_GET_VARS['manufacturers_id'])) {
   $image = tep_db_query("select manufacturers_image from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
   $image = tep_db_fetch_array($image);
   $image = $image['manufacturers_image'];
	 } elseif ($current_category_id) {
   $image = tep_db_query("select categories_image from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");
   $image = tep_db_fetch_array($image);
   $image = $image['categories_image'];
	 }
?> 
          <td align="right"><?php echo tep_image(DIR_WS_IMAGES . $image, $category['categories_htc_title_tag'], HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
         </tr>
         <?php if (tep_not_null($category['categories_htc_description'])) { ?> 
         <tr>
          <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
         </tr>
         <tr>
          <td><h2><?php echo $category['categories_htc_description']; ?></h2></td>
         </tr>
         <?php } ?>
           </table></td> 
       </tr> 
       <tr> 
         <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
       </tr> 
       <tr> 
         <td><?php include(DIR_WS_MODULES . FILENAME_PRODUCT_LISTING); ?></td> 
       </tr> 
     </table></td> 
   <?php
 } else { // default page
?> 
   <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0"> 
       <tr> 
         <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> 
             <tr> 
               <td class="pageHeading"><?php echo HEADING_TITLE; ?></td> 
               <td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . 'table_background_default.gif', HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td> 
             </tr> 
           </table></td> 
       </tr> 
       <tr> 
         <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
       </tr> 
       <tr> 
         <td><table border="0" width="100%" cellspacing="0" cellpadding="0"> 
             <tr> 
               <td class="main"><?php echo tep_customer_greeting(); ?></td> 
             </tr> 
             <tr> 
               <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
             </tr> 
             <tr> 
               <td class="main"><?php echo TEXT_MAIN; ?></td> 
             </tr> 
             <tr> 
               <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> 
             </tr> 
             <tr> 
               <td><?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?></td> 
             </tr> 
             <?php
	 include(DIR_WS_MODULES . FILENAME_UPCOMING_PRODUCTS);
?> 
           </table></td> 
       </tr> 
     </table></td> 
   <?php
 }
?> <?php 
//SEF BEGIN
}
//SEF END
?> 
   <!-- 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'); ?>

my lines will likely be different than the out of the box index.php, i have blueyon's search engine friendly url's mod.

Edited by eww

Share this post


Link to post
Share on other sites
hey guys, this is an excellet contribution!!

 

i'm sure this problem is due to me overlooking something, but everything appears to work perfectly, except the "title" i specify in: "Products Page Title:" doesn't show in the title bar.

 

and i may be blind, but i don't see: "Page Header Description:" or "Product Keywords:" when i right click & view source.

 

all i can see is the data i specified in the 'Text Control' areas for "Default Title" and whatnot

 

which file should i look in, to make sure i didn't miss an edit or something?

 

here's an example of what does show:

The code is not setup to use the title and keywords you enter for the products page. This is because it takes those from the products page header tags fields. Doing it this way, optimizes the products page properly and automatically. If additional information is added, it will probably hurt your position for the product pages in the SERP's.

 

Jack

Share this post


Link to post
Share on other sites

i seen this site (i will assume (s)he is using this contribution, as i got this url from this support thread:

http://funjumping.de/shop/glycolic-polymer...ion-10-p-2.html

 

they seem to have their item name in their title bar (which is what i have been trying to do), my title bar only has the category the item belongs to, for example:

 

category: ac/dc shirts

item name: ac/dc back in black shirt

title bar for item: ac/dc shirts :: my webstore name

 

this is what i WANT it to do:

title bar for item: ac/dc back in black shirt :: my webstore name

Share this post


Link to post
Share on other sites
I have uploaded a new version.Here are the main changes:

 

-> Remove the meta tag reply-to (again). It was added back by msitake.

-> AutoInstall instructions didn't explain that a directory needed to be created. Added that instruction.

-> Added fill_tags to admin tool.

-> Fixed problem with admin->English page corrupting the english/header_tags.php file.

-> Fixed problem with admin->Text page corrupting the includes/header_tags.php file.

-> Added text to admin->Header Tags section.

-> Added popup to explain switches.

-> Removed the fill tags directory from the archive.

 

I think the problems with the files being corrupted by the admin tool are fixed with this version. I would appreciate it if anyone that was having that problem would let me know it the problem still exists.

 

Jack

 

As I see "fill_tags.php" is no longer used, you've replaced it with admin/header_tags_fill_tags.

When I use this new file from Admin, I get the product_title benneath the same product_title when using advanced search results or manufacturers_id because I'm using "kurzschreibung" contrib. too.

 

If I point .../admin/fill_tags.php to run, then I get correctly product_listing with a short description benneath the product_tilte at product_listing of advanced search results.

 

?What's going on?

 

Regards, Andres

http://www.elbuenlibro.com/bookstore/index...facturers_id=10

Share this post


Link to post
Share on other sites
andresull, you seem to have the item name in the title bar also, how did you do that??

http://www.elbuenlibro.com/bookstore/produ...9b37fbfc7310c62

 

where it says: Microsoft IntelliMouse Explorer 'El Buen Libro', spanish bookstore since 1947

 

As far as I understand that's what "header tags controller" does !!

Anyway I'm using another contrib. called "kurzschreibung" in order to have a short description after the title when making a search: here is where I'm having some trouble if using Header Tags Fill Tags from Admin.

 

Regards,

Andres

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
Sign in to follow this  

×