Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Images in Category Box For Main & Subcategories


Guest

Recommended Posts

Hi there,

 

was wondering if anyone could help please.

 

Changed my code so that I have images in my category box following the instructions by LiquidPony (which are excellent by the way and if anyone wants them here they are http://www.oscommerce.com/forums/index.php?showtopic=100062) but I would also like images for the subcategories as well in the box and have tried many combinations to make this happen but still just get text. Is there someone out there who can tell me please what I need to change so that the subcategories are also images?

 

My code for catalog/includes/boxes/categories.php is now:

 

<?php
/*
 $Id: categories.php,v 1.25 2003/07/09 01:13:58 hpdl Exp $

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

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 function tep_show_category($counter) {
global $tree, $categories_string, $cPath_array;

for ($i=0; $i<$tree[$counter]['level']; $i++) {
  $categories_string .= "  ";
}

$categories_string .= '<a href="';

if ($tree[$counter]['parent'] == 0) {
  $cPath_new = 'cPath=' . $counter;
} else {
  $cPath_new = 'cPath=' . $tree[$counter]['path'];
}

$categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">';

if (isset($cPath_array) && in_array($counter, $cPath_array)) {
  $categories_string .= '<b>';
}

// display category name
if ($tree[$counter]['level'] == 0) { 
$categories_string .= '<img class="cats" src="' . $tree[$counter]['image'] . '">';
}
else $categories_string .= $tree[$counter]['name'];

if (isset($cPath_array) && in_array($counter, $cPath_array)) {
  $categories_string .= '</b>';
}

if (tep_has_category_subcategories($counter)) {
  $categories_string .= '';
}

$categories_string .= '</a>';

if (SHOW_COUNTS == 'true') {
  /** original **/ //$products_in_category = tep_count_products_in_category($counter);
/** show-soldout-v1.0 **/ $products_in_category = tep_count_products_in_category($counter, true);
  if ($products_in_category > 0) {
	$categories_string .= ' (' . $products_in_category . ')';
  }
}

$categories_string .= '<br>';

if ($tree[$counter]['next_id'] != false) {
  tep_show_category($tree[$counter]['next_id']);
}
 }
?>
<!-- categories //-->
	  <tr>
		<td>
<?php
 $info_box_contents = array();
 $info_box_contents[] = array('text' => BOX_HEADING_CATEGORIES);

 new infoBoxHeading($info_box_contents, false, false);

 $categories_string = '';
 $tree = array();

 $categories_query = tep_db_query("select c.categories_id, cd.categories_name, 
c.parent_id, cd.categories_description_image from " . TABLE_CATEGORIES . " c, " 
. TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' and 
c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id 
."' order by sort_order, cd.categories_name");while ($categories = 
tep_db_fetch_array($categories_query)) { 
$tree[$categories['categories_id']] = array('name' => 
$categories['categories_name'],					   
'parent' => $categories['parent_id'],				  
 'level' => 0,					   
'path' => $categories['categories_id'],				 
  'next_id' => false,					 
 'image' => DIR_WS_IMAGES . $categories['categories_description_image']);

if (isset($parent_id)) {
  $tree[$parent_id]['next_id'] = $categories['categories_id'];
}

$parent_id = $categories['categories_id'];

if (!isset($first_element)) {
  $first_element = $categories['categories_id'];
}
 }

 //------------------------
 if (tep_not_null($cPath)) {
$new_path = '';
reset($cPath_array);
while (list($key, $value) = each($cPath_array)) {
  unset($parent_id);
  unset($first_id);
  $categories_query = tep_db_query("select c.categories_id, cd.categories_name, 
c.parent_id, cd.categories_description_image from " . TABLE_CATEGORIES . " c, " 
. TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$value . "' 
and c.categories_id = cd.categories_id and cd.language_id='" . 
(int)$languages_id ."' order by sort_order, cd.categories_name");  if 
(tep_db_num_rows($categories_query)) {   $new_path .= $value;   
while ($row = tep_db_fetch_array($categories_query)) {	
$tree[$row['categories_id']] = array('name' => $row['categories_name'], 
				  'parent' => 
$row['parent_id'],					   'level' 
=> $key+1,					   'path' => 
$new_path . '_' . $row['categories_id'],				  
 'next_id' => false,					  
'image' => DIR_WS_IMAGES . $categories['categories_description_image']);

	  if (isset($parent_id)) {
		$tree[$parent_id]['next_id'] = $row['categories_id'];
	  }

	  $parent_id = $row['categories_id'];

	  if (!isset($first_id)) {
		$first_id = $row['categories_id'];
	  }

	  $last_id = $row['categories_id'];
	}
	$tree[$last_id]['next_id'] = $tree[$value]['next_id'];
	$tree[$value]['next_id'] = $first_id;
	$new_path .= '_';
  } else {
	break;
  }
}
 }
 tep_show_category($first_element); 

 $info_box_contents = array();
 $info_box_contents[] = array('text' => $categories_string);

 $info_box_contents[] = array('align' => 'center',
						   'text'  => '<font size=-2><a href="' . tep_href_link(FILENAME_ALLPRODS, '', 'NONSSL'));
new infoBox($info_box_contents);
?>
<table border="0" cellspacing="0" cellpadding="0" width="125">
<tr>
  <td align="center"><img src="images/footer3.gif"></td>
</tr>
 </table>
		</td>
	  </tr>
<!-- categories_eof //-->

 

I would be so appreciative if someone could help as I have been trying to sort this all day!!!! :blush:

 

Thank you

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...