Jump to content
Sign in to follow this  
Farrukh

[Contribution] Header Tags Controller for Admin MS 2.2

Recommended Posts

Hi there, I've installed HeaderTags 2.6 on my testsite (and have a previous version working on my live site).

 

The only difference between the two sites is STS, but I have ironed out all those interop issues already.

 

On my testmachine (winXP, Apache): headertags in admin produces the followign errors:

Error Permissions settings for the C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/gearshop/includes/header_tags.php file appear to be incorrect
Error Permissions settings for the C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/gearshop/includes/languages/english/header_tags.php file appear to be incorrect

However I have already set both these files to Grant All Access - but then, you know how flaky windows chmod is! :)

 

So I decided to upload the site to my live Unix webserver and use CHMOD777 on those files.

So now, when I go to headertags in admin, I get the following error above each of the HT admin pages:

Warning: file(/catalog/includes/languages/english/header_tags.php): failed to open stream: No such file or directory in /home/xxxxxx/public_html/catalog/admin/header_tags_controller.php on line 280

Yet there IS such a file in that directory.... any ideas?

Share this post


Link to post
Share on other sites
I saw help on this earlier:

think it said: CHMOD 666

 

Helle :-)

 

Nope, that's not it.

Share this post


Link to post
Share on other sites
Nope, that's not it.

 

Just in case others on this forum are looking for the answer to this simple problem (kicking myself :).

 

If you have the same errors as below:

Warning: file(/catalog/includes/languages/english/header_tags.php): failed to open stream: No such file or directory in /home/xxxxxx/public_html/catalog/admin/header_tags_controller.php on line 280

 

And the files ARE in fact located in the above directories, then you have incorrectly setup your /catalog/admin/includes/configure.php file.... DOH!!

Share this post


Link to post
Share on other sites
I think you screwed up the bundled version by not following the instructions that came with the bundle to make the two co-exist together. You can not install the full version of HTC along with STS and not have problems.

 

The bundled version will make HTC work fully as long as you have followed the supplied instructions. It appears you are missing some files. You also either did not add the following code to your catalog/includes/header_tags.php file:

 

 require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

 

You may have also forgot to set the correct permissions to the files mentioned in the install text.

brand new install move contributions followed instructions for new install.

I get this same problem everything looks like it works but when you display the template nothing.

no meta, no title, no nothing. Installed on Apache TSW The Saint Wamp for windows.

 

Marking Contrib as "Needs work" but it looks like someday may be a great contribution.

Share this post


Link to post
Share on other sites
brand new install move contributions followed instructions for new install.

I get this same problem everything looks like it works but when you display the template nothing.

no meta, no title, no nothing. Installed on Apache TSW The Saint Wamp for windows.

 

Marking Contrib as "Needs work" but it looks like someday may be a great contribution.

You haven't yet figured out what you did wrong to put a label on the contribution. The contribution has worked for a lot of other users so the contribution is fine. Double check your own work. What do you mean by "brand new install move contributions followed instructions for new install." That does not even make sense so I do not know where to begin to help you out.

Bill Kellum

 

Sounds Good Productions

STS Tutorials & more: STSv4.6, STS Add-ons (STS Power Pack), STS V4 Forum STS Forum FREE TEMPLATE

Share this post


Link to post
Share on other sites
You haven't yet figured out what you did wrong to put a label on the contribution. The contribution has worked for a lot of other users so the contribution is fine. Double check your own work. What do you mean by "brand new install move contributions followed instructions for new install." That does not even make sense so I do not know where to begin to help you out.

 

Hi,

 

I can tell you that I have exact the same issue runing wamp server on XP Pro.

 

Haan

Share this post


Link to post
Share on other sites

Saying it just doesn't work is not helpful to anyone. If you would like help in finding the problem, you need to be more specific as to the problem. The Install_Readme_First.txt instructions tell you what to look for in each part of the installation. Where did yours fail?

 

Jack

Share this post


Link to post
Share on other sites
Hi,

 

I can tell you that I have exact the same issue runing wamp server on XP Pro.

 

Haan

 

Hi,

 

Permissions settings for the C:/wamp/www/shop/includes/header_tags.php file appear to be incorrect

Permissions settings for the C:/wamp/www/shop/includes/languages/dutch/header_tags.php file appear to be incorrect

 

The access for these two files are okay, read and write access is allowed. I can not execute chmod becaues I am running on XP pro. Instead I changed the access in the properties of the two files.

Share this post


Link to post
Share on other sites

Hi all,

 

I'm showing my newbie-ness to this whole genre here.. but, I'm really wondering:

 

What is the difference between *_thc_desc_tag and *_htc_description in both the categories and manufacturers tag fields?

 

Thanks so much for your help - everyone!!

-Nancy

Share this post


Link to post
Share on other sites

The desc is for the meta tags description and is only for the search engines. The description is for the text that appears on the page of the shop, under the page heading.

 

Jack

Share this post


Link to post
Share on other sites
Header Tags should work with any shop. Although in most templates, you have to edit the code more than is in the instructions to get it to fully work.

 

Jack

 

Thanks for replied. I managed to install the contribution seem to work, but I am missing Meta Tag Information in admin. Is there something I missed? How do I know or check the contribution is working after installed? Thanks for sharing and appreciated for your help

Anchim

Share this post


Link to post
Share on other sites

Hello,

I'm working with a custom theme for a client trying to add this awsome contribution and I'm running into a few problems. I'm having problems implementing the contributions code to the index.php and product_info.php page. If some one can help me out I would appreciate it.

 

Heres the code for quick reference

Find the following lines in index.php

Around line 70:

  Find

if ($category_depth == 'nested') {
$category_query = tep_db_query("select cd.categories_name, c.categories_image 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 . "'");

  and replace with 

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 . "'");

  =============================================
Around line 78:

  Find

<td class="pageHeading"><?php echo HEADING_TITLE; ?></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>

  and replace it with 

	   <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 } ?>
  =============================================
Around line 247:

  Find

?>
<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>

  and replace it with 

if (isset($HTTP_GET_VARS['manufacturers_id'])) 
  $db_query = tep_db_query("select manufacturers_htc_title_tag as htc_title, manufacturers_htc_description as htc_description from " . TABLE_MANUFACTURERS_INFO . " where languages_id = '" . (int)$languages_id . "' and manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
else 
  $db_query = tep_db_query("select categories_htc_title_tag as htc_title, categories_htc_description as htc_description from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$current_category_id . "' and language_id = '" . (int)$languages_id . "'");

$htc = tep_db_fetch_array($db_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 $htc['htc_title']; ?></h1></td>


Around line 298

 Find

  <td align="right"><?php echo tep_image(DIR_WS_IMAGES . $image, HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
 </tr>

REPLACE with

	   <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($htc['htc_description'])) { ?> 
	  <tr>
	   <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
	  </tr>
	  <tr>
	   <td colspan="2"><h2><?php echo $htc['htc_description']; ?></h2></td>
	  </tr>
	  <?php } ?>

================================================================================
======================
In product_info.php (around line 104)

FIND
		<td class="pageHeading" valign="top"><?php echo $products_name; ?></td>
		<td class="pageHeading" align="right" valign="top"><?php echo $products_price; ?></td>

REPLACE with 

		<td valign="top"><h1><?php echo $products_name; ?></h1></td>
		<td align="right" valign="top"><h1><?php echo $products_price; ?></h1></td>

NOTE: In any page in which you make the change to the title for Header Tags, you should
   also locate the line containing HEADING_TITLE, remove the pageHeading class and 
   add the h1 tags as above.

 

 

 

 

 

 

Heres a look at the index.php

<?php


 require('includes/application_top.php');

// 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: Header Tag Controller v2.6.0
if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {
 require(DIR_WS_INCLUDES . 'header_tags.php');
} else {
?> 
 <title><?php echo TITLE; ?></title>
<?php
}
// EOF: Header Tag Controller v2.6.0
?>
<title><?php echo TITLE; ?></title>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
</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="0" cellpadding="0">
 <tr>
<!-- body_text //-->
<?php
 if ($category_depth == 'nested') {
$category_query = tep_db_query("select cd.categories_name, c.categories_image 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="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;
  }
}

?>
<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>
<?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'];
}
?>
	  </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_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>












 <?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?>







	 </td>
   </tr>
</table>
</td>
<?php
 }
?>
<!-- body_text_eof //-->
 </tr>
</table>
<!-- body_eof //-->

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

 

 

 

 

 

Finally

product_info.php

 

<?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: Header Tag Controller v2.6.0

if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) {

require(DIR_WS_INCLUDES . 'header_tags.php');

} else {

?>

<title><?php echo TITLE; ?></title>

<?php

}

// EOF: Header Tag Controller v2.6.0

?>

<title><?php echo TITLE; ?></title>

<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="0" cellpadding="0">

<tr>

<!-- body_text //-->

<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 cellspacing=0 cellpadding=0 width=437 align=center>

<tr><td background=images/m22.gif width=437 height=29 valign=top>

<table cellspacing=0 cellpadding=0>

<tr><td height=8></td></tr>

<tr><td width=25></td><td class=ch6>product</td></tr>

</table>

</td></tr>

<tr><td valign=top class=ch7>

 

 

 

 

 

 

 

 

<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 style="color:#494949; font-size:10px">' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</s> <span style=ch8>' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';

} else {

$products_price = '<span style=ch8>'.$currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])).'</style>';

}

 

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'];

}

?>

 

<table cellspacing=0 cellpadding=0 width=417 border=0 align=center>

<tr><td height=13></td></tr>

<tr><td width=208 align=center valign=middle>

 

 

 

 

<!-- display image -->

<?php

if (tep_not_null($product_info['products_image'])) {

?>

<table cellspacing="0" cellpadding="2" align="center">

<tr>

<td align="center" class="smallText">

<script language="javascript"><!--

document.write('<?php echo '<a href="java script: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

}

?>

<!--end display image -->

 

</td>

<td background=images/m09.gif width=1></td>

<td width=208>

<table cellspacing=0 cellpadding=0 width=190 align=center>

<tr>

<td valign=top>

<table cellspacing=0 cellpadding=0>

<tr><td class=ch9><?=$products_name?></td></tr>

<tr><td height=13></td></tr>

<tr><td class=ch10>

<?

if ($product_info['products_date_available'] > date('Y-m-d H:i:s'))

echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available']));

else

echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added']));

?>

</td></tr>

<tr><td height=10></td></tr>

<tr><td><span class=ch10>Item #:</span> <span class=ch14><?=$products_id?></span></td></tr>

<tr><td height=14></td></tr>

<tr><td><span class=ch11>Price:</span>  <span class=ch8><?=$products_price?></span> </td></tr>

</table>

</td>

</tr>

<tr><td height=5></td></tr>

<tr><td colspan=2 align=right><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_BUY_NOW); ?>   </td></tr>

<tr><td height=5></td></tr>

</table>

</td></tr>

<tr><td height=5></td></tr>

<tr><td colspan=3 width=417 height=1 background=images/m29.gif></td></tr>

<tr><td height=18></td></tr>

<tr><td colspan=3 valign=top align=center>

<table cellspacing=0 cellpadding=0 width=385 align=center>

<tr><td class=ch9>Product description</td></tr>

<tr><td height=17></td></tr>

<tr><td class=ch14>

<?php echo stripslashes($product_info['products_description']); ?>

</td></tr>

</table>

</td></tr>

<tr><td height=32></td></tr>

</table>

<tr><td><img src=images/m30.gif width=438 height=7></td></tr>

 

<!----------------------- Not editable part -------------------------------->

 

<tr><td>

 

<?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

Share this post


Link to post
Share on other sites
Thanks for replied. I managed to install the contribution seem to work, but I am missing Meta Tag Information in admin. Is there something I missed? How do I know or check the contribution is working after installed? Thanks for sharing and appreciated for your help

Anchim

You need to go to admin->Header Tags->Fill Tags and run it.

 

Jack

Share this post


Link to post
Share on other sites

I'm getting this error when I click on Header Tags in the Admin Panel

Permissions settings for the /kunden/homepages/9/d98284952/htdocs/baby/includes/header_tags.php file appear to be incorrect

Error Permissions settings for the /kunden/homepages/9/d98284952/htdocs/baby/includes/languages/english/header_tags.php file appear to be incorrect

I saw your note about the permissions needing to be set to 755 or 777 which I did but it's still not working. Now what did I do wrong? :)

Edited by izbryte

Share this post


Link to post
Share on other sites

Be sure the permissions for the includes/header_tags.php and english/header_tags.php files are the same as on the images directory. The permissions on the images directory are the settings necessary for your site to work properly on your server so the code in header tags compares against it. If they don't match, you will get that error.

 

Jack

Share this post


Link to post
Share on other sites

Go to one of your products and look at the browser title. It should match your product title (unless you changed it).

 

Jack

Share this post


Link to post
Share on other sites

Rightyo... I am using HTC, STS, and Ultimate SEO - making sure I didn't kill off SEO when installing was fun, but I got there in the end (I think)

 

catalog/includes/header_tags.php

 

if lines 7 and 8 are

 

require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

require(DIR_WS_LANGUAGES . $language . '/' . 'header_tags.php');

 

Warning: require(includes/languages//header_tags.php) [function.require]: failed to open stream: No such file or directory in /home/xyz/public_html/includes/header_tags.php on line 8

 

Warning: require(includes/languages//header_tags.php) [function.require]: failed to open stream: No such file or directory in /home/xyz/public_html/includes/header_tags.php on line 8

 

Fatal error: require() [function.require]: Failed opening required 'includes/languages//header_tags.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/xyz/public_html/includes/header_tags.php on line 8

 

Obviously there's an issue with $language - so I change it to

 

require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

require(DIR_WS_LANGUAGES . 'english/' . 'header_tags.php');

 

and get this error

 

Fatal error: Cannot redeclare clean_html_comments() (previously declared in /home/xyz/public_html/includes/functions/clean_html_comments.php:11) in /home/xyz/public_html/includes/functions/clean_html_comments.php on line 24

 

so I comment out line 7

 

//require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

require(DIR_WS_LANGUAGES . 'english/' . 'header_tags.php');

 

and it works... well sortof...

 

On product pages (eg http://www.botanicfanatic.com/appleberrycard-p-28.html) the best I can get is the default values. I really want the Product name in the title and the values I put in the product title, desc, kw fields to appear.

 

The site is a work in progress and is very much beta - I'd love to get this issue ironed out. Any suggestions?

Edited by Skipdaddyo

Share this post


Link to post
Share on other sites

You have to set it up a certain way or it won't work. See the HTC and STS download in the STC contribution section.

 

Jack

Share this post


Link to post
Share on other sites

Why do I keep on getting this error message - what ever language I choose:

 

includes/languages/danish/header_tags.php file appear to be incorrect

includes/languages/english/header_tags.php file appear to be incorrect

 

everything used to work??

 

Helle :-)

Share this post


Link to post
Share on other sites

That's a partial message but I assume you are referring to the message at the top where is refers to the permissions. If so, then the permissions on those files probably doesn't match the ones on your images directoy.

 

Jack

Share this post


Link to post
Share on other sites
Rightyo... I am using HTC, STS, and Ultimate SEO - making sure I didn't kill off SEO when installing was fun, but I got there in the end (I think)

 

catalog/includes/header_tags.php

 

if lines 7 and 8 are

 

require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

require(DIR_WS_LANGUAGES . $language . '/' . 'header_tags.php');

 

Warning: require(includes/languages//header_tags.php) [function.require]: failed to open stream: No such file or directory in /home/xyz/public_html/includes/header_tags.php on line 8

 

Warning: require(includes/languages//header_tags.php) [function.require]: failed to open stream: No such file or directory in /home/xyz/public_html/includes/header_tags.php on line 8

 

Fatal error: require() [function.require]: Failed opening required 'includes/languages//header_tags.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/xyz/public_html/includes/header_tags.php on line 8

 

Obviously there's an issue with $language - so I change it to

 

require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

require(DIR_WS_LANGUAGES . 'english/' . 'header_tags.php');

 

and get this error

 

Fatal error: Cannot redeclare clean_html_comments() (previously declared in /home/xyz/public_html/includes/functions/clean_html_comments.php:11) in /home/xyz/public_html/includes/functions/clean_html_comments.php on line 24

 

so I comment out line 7

 

//require(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

require(DIR_WS_LANGUAGES . 'english/' . 'header_tags.php');

 

and it works... well sortof...

 

On product pages (eg http://www.botanicfanatic.com/appleberrycard-p-28.html) the best I can get is the default values. I really want the Product name in the title and the values I put in the product title, desc, kw fields to appear.

 

The site is a work in progress and is very much beta - I'd love to get this issue ironed out. Any suggestions?

Try this:

 

Change the "require" statements to "require_once" as so:

 

 require_once(DIR_WS_FUNCTIONS . 'clean_html_comments.php');

Edited by bkellum

Bill Kellum

 

Sounds Good Productions

STS Tutorials & more: STSv4.6, STS Add-ons (STS Power Pack), STS V4 Forum STS Forum FREE TEMPLATE

Share this post


Link to post
Share on other sites

Hi to all,

I have installes the contribution b2b and have the following problem:

 

I have to do this:

In product_info.php (around line 104)

 

FIND

<td class="pageHeading" valign="top"><?php echo $products_name; ?></td>

<td class="pageHeading" align="right" valign="top"><?php echo $products_price; ?></td>

 

REPLACE with

 

<td valign="top"><h1><?php echo $products_name; ?></h1></td>

<td align="right" valign="top"><h1><?php echo $products_price; ?></h1></td>

 

My line look like this:

<td class="pageHeading" valign="top"><?php echo $products_name; ?></td>

<!-- <td class="pageHeading" align="right" valign="top"><?php echo $products_price; ?></td> -->

<td align="left" class="pageHeading"><?php echo $product_info_values['products_name']; ?></td>

<td align="right" class="tableHeading">

 

I have no idea what to do. With my last change I had dispayed the price twice.

Help is appreciated, thanks in advance.

Gustl

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  

×