staradmire Posted April 13, 2009 Share Posted April 13, 2009 I posted this in the wrong part of the forum so I am posting it here. I am using a template I love everything about it but how the subcategories are laid out. When you click the parent category the subcategories open up right underneath the parent category looking like several new categories. I would like some sort of indentation showing that they are indeed subcategories. I do not know how to do this. Can someone help please? I am using the contribution http://addons.oscommerce.com/info/6070 Here is the category.php file <?php /* $Id: categories.php 1739 2007-12-20 00:52:16Z hpdl $ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright © 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 .= '<li><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 $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 .= ''; } if (SHOW_COUNTS == 'true') { $products_in_category = tep_count_products_in_category($counter); if ($products_in_category > 0) { $categories_string .= ' (' . $products_in_category . ')'; } } $categories_string .= '</a>'; $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, true, false); $categories_string = ''; $tree = 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']; } } //------------------------ 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(); $categories_string = str_replace('<br>' , '' , $categories_string); $categories_string = str_replace(' ' , '' , $categories_string); //echo 'cat' . $categories_string . 'endcat'; $info_box_contents[] = array('text' => "<div id='menu2'><ul>" . $categories_string . "</ul></div>"); new infoBox($info_box_contents); ?> </td> </tr> <!-- categories_eof //--> Quote Link to comment Share on other sites More sharing options...
staradmire Posted April 15, 2009 Author Share Posted April 15, 2009 This is from my stylesheet I really need help please ul { list-style: none; margin: 0; padding: 0; } /* =-=-=-=-=-=-=-[Menu Two]-=-=-=-=-=-=-=- */ #menu2 { width: 180px; border-style: solid solid none solid; border-color: #677D92; border-size: 1px; border-width: 1px; margin: 1px; } #menu2 li a { height: 40px; voice-family: "\"}\""; voice-family: inherit; text-decoration: none; } #menu2 li a:link, #menu2 li a:visited { color: #fff; display: block; background: url(images/menu2.gif); padding: 8px 0 0 10px; } #menu2 li a:hover { color: #ffffff; background: url(images/menu2.gif) 0 -50px; padding: 8px 0 0 10px; } #menu2 li a:active { color: #283A50; background: url(images/menu2.gif) 0 -100px; padding: 8px 0 0 10px; } .navh2 { background-color: #222222; color: #999999; font-weight: bold; width: 120px; } Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.