Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Category_ Description V5.02


zakya

Recommended Posts

Hello,

Installation of the contrib is ok. Thanks for this great work ! However I am having 2 Heading_titles for the categories. One from the contrib and the initial one with the description in between like this

  • HEADING_TITLE (Category Name).....from the contrib and I know how to remove it
    Category Description Text
  • HEADING_TITLE (Category Name)......Original one but don't know how to remove it
    Products listing

I want the category description to appear just before the product listing. I have played around with the catalog/index.php and catalog/includes/languages/english/index.php and catalog/includes/module/product_listing.php and searched the forum for hours without success. This is driving me crazy as I know it should be very simple but can't find out how.

The following is my catalog/index.php as I believe the problem should be there. Please have a look and help me spot the problem !

P.S. I have the installation on localhost.

<?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('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>
  <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>"> 
  <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,cd.categories_description,cd.<font color="#ff0000">categories_heading_title </font>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 class="pageHeading" valign="top"><font color="#ff0000"><?php echo (!empty($category['categories_heading_title']) ? $category['categories_heading_title'] : HEADING_TITLE); ?></td></font>
		 </tr>
		 <tr>
		   <TD COLSPAN="2" CLASS="main">
		   <?php echo tep_image(DIR_WS_IMAGES . $category['categories_image'], $category['categories_name'], HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT, 'ALIGN=right'); ?>
		   <?php echo $category['categories_description']; ?>
		   </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="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) . '
  ' . $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 left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c 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 left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m 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 left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c 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 left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c 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;
	 }
   }
	$cat_description_query = tep_db_query ("select categories_heading_title, categories_description from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . $current_category_id . "' and language_id = '" . (int)$languages_id . "'");
   $cat_description = tep_db_fetch_array ($cat_description_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 class="pageHeading"><?php echo (!empty($cat_description['categories_heading_title']) ? $cat_description['categories_heading_title'] : HEADING_TITLE); ?></td>

  <!--


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


  -->

  <!-- //Category description start   

		 <tr>
 <td>
  <?php

   $category_query = tep_db_query("select cd.categories_name from " .TABLE_CATEGORIES_DESCRIPTION . " cd where cd.categories_id = '" .(int)$current_category_id . "' and cd.language_id = '" .(int)$languages_id . "'");
   $category = tep_db_fetch_array($category_query);
   $filename = DIR_WS_LANGUAGES . $language . '/descriptions/'.$category['categories_name'].'.php';
   if (file_exists($filename)) { 
	 include( $filename );
   }

  ?>
 </td>
  </tr>
  //Category description end --> 
</tr>
		 <tr><TD> </TD></TR>
		 <tr>
		   <TD COLSPAN="2" CLASS="main">
		   <font color="#ff8c00"><?php echo tep_image(DIR_WS_IMAGES . $image, (!empty($cat_description['categories_heading_title']) ? $cat_description['categories_heading_title'] : HEADING_TITLE), HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT, 'ALIGN=right'); ?></font>
		  <?php echo $cat_description['categories_description']; ?> 
		   </TD>
		 </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); ?>

	   <table cellspacing=0 cellpadding=0 border=0>
		<tr>
		 <td width=250><a href=<?=tep_href_link('product_info.php', 'products_id=79')?>><img src=images/m32.gif width=250 height=88 border=0></a></td>
		 <td width=2></td>
		 <td width=251><a href=<?=tep_href_link('product_info.php', 'products_id=63')?>><img src=images/m39.gif width=251 height=88 border=0></a></td>
		</tr>
	   </table>		
	   </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'); ?>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...