henor Posted March 19, 2007 Posted March 19, 2007 Hello, I am changing a template but ran into the following problem: De subcategories are displayed immediately as I open the mainpage. Because I have a lot of subcategories, would like to change this in a menu shows the categories only when I click the maincategory (as it is in the standard version of MS2) . Probably this has to be changed in categories.php , but I don't know where: Does anyone know How? This is in categories.php: <?php /* $Id: categories.php,v 1.25 2003/07/09 01:13:58 hpdl Exp $ E-Commerce Solutions Released under the GNU General Public License */ function tep_show_category($counter) { global $tree, $categories_string, $cPath_array, $cat_str; $cat_str = ""; for ($i=0; $i<$tree[$counter]['level']; $i++) { $cat_string = " "; } if ($tree[$counter]['parent']==0) { $categories_string .= '<table border="0" cellpadding="0" cellspacing="0" height="24" style="background:url(images/categories_main_bg.gif) repeat-x;"><tr><TD width="200" valign="top" height="19" align="left" style="padding-left:10px; padding-top:5px;"><a class="h11" href="'; } else $categories_string .= '<table border="0" cellpadding="0" cellspacing="0"><tr><TD width="200" valign="middle" height="17" align="left" style="padding-left:10px;">'.$cat_string.'<img src="images/categories_marker.gif" width="3" height="6" alt="" border="0" /> <a class="m11" 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 $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') { $products_in_category = tep_count_products_in_category($counter); if ($products_in_category > 0) { $categories_string .= ' <span style="color:#6d7066;FONT-SIZE: 11px;">(' . $products_in_category . ')</span>'; } } $categories_string .= '</td></tr></table>'; if ($tree[$counter]['next_id'] != false) { tep_show_category($tree[$counter]['next_id']); } } ?> <!-- categories <div style="padding-top:1px; "></div> //--> <tr> <td valign="top"> <?php $info_box_contents = array(); $info_box_contents[] = array('text' => BOX_HEADING_CATEGORIES); ?> <?php new infoBoxHeading($info_box_contents, true, true);?> <table border="0" cellpadding="0" cellspacing="0" height="100%" width="100%" style="border:1px solid #a0a596; margin-top:1px; background-color:#e7e9e3; "> <tr> <td> <?php $categories_string = ''; $tree = array(); $i=0; $cPath_array=array(); $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id 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); 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']; } $cPath_array[$i]=$categories['categories_id']; $i++; } //------------------------ // 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 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); 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); ?> <?php new infoBox($info_box_contents); ?> </td> </tr> </table> </td> </tr> <!-- categories_eof //-->
Recommended Posts
Archived
This topic is now archived and is closed to further replies.