Njuwdaij Posted October 14, 2006 Posted October 14, 2006 Is it possible to change the coding of the category tree in a way so the subcategories are always visible and not only when you click on the main category? Thanks. Jeannette
digbydo Posted October 14, 2006 Posted October 14, 2006 search the contributions section for ideas... here's just one: http://www.oscommerce.com/community/contributions,885 :) one-click installation.. Dave's info
Njuwdaij Posted October 14, 2006 Author Posted October 14, 2006 search the contributions section for ideas... here's just one: http://www.oscommerce.com/community/contributions,885 :) great thank you! I have a heavily modified site with lot of contribs, but just couldn't find this one... sorry... :blink:
Njuwdaij Posted October 14, 2006 Author Posted October 14, 2006 I was cheering too soon.... My category tree is not situated in includes/boxes but directly in the header. Anybody an idea how to show the subcategory there? <? // ---- CATEGORIES function tep_show_category($counter) { global $tree, $categories_string, $cPath_array; if(!$tree[$counter]['level']){ $categories_string .= $categories_string ? '' : ''; $categories_string .= '<tr><td><img src=images/m15.gif width=3 height=5 align=absmiddle> <a class=ml2 href='; if ($tree[$counter]['parent'] == 0) { $cPath_new = 'cPath=' . $counter; } else { $cPath_new = 'cPath=' . $tree[$counter]['path']; } $categories_string .= tep_href_link('index.php', $cPath_new) . '>'; // display categry name $categories_string .= $tree[$counter]['name']; $categories_string .= '</a></td></tr>'; }else{ // SUBCATEGORY $categories_string .= '<tr><td><img src=images/m21.gif width=3 height=5 align=absmiddle>'; for($i=0;$i<$tree[$counter]['le vel'];$i++) $categories_string .= ' '; $categories_string .= ' <a class=ml2 style="font-weight:normal;" href='; if ($tree[$counter]['parent'] == 0) { $cPath_new = 'cPath=' . $counter; } else { $cPath_new = 'cPath=' . $tree[$counter]['path']; } $categories_string .= tep_href_link('index.php', $cPath_new) . '>-'; // display category name $categories_string .= $tree[$counter]['name']; $categories_string .= '</a></td></tr>'; } if ($tree[$counter]['next_id'] != false) { tep_show_category($tree[$counter]['next_id']); } } define(TABLE_CATEGORIES, "categories"); define(TABLE_CATEGORIES_DESCRIPTION, "categories_description"); $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 ($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; } } } $categories_string .= ''; tep_show_category($first_element); $categories_string .= ''; echo $categories_string; ?>
ansa Posted October 17, 2006 Posted October 17, 2006 search the contributions section for ideas... here's just one: http://www.oscommerce.com/community/contributions,885 :) Hi all, I can?t find support for the above, 885 contribution. I am still looking for help why I am gating this: after applying Show_sub-categories_onmouse_over_v2, (menu 2) contribution, my category links don?t work properly. For example if the main category link has URL ../catalog/index.php?cPath=25 the subcategory link in this category has .. cPath=25_21, and if I want to return from this subcategory to the main category, the URL shows .. cPath=25_21_25 instead of cPath=25. Simply I can?t return to the main category. Has somebody experienced such problem before or may be has an idea what cause this strange behavior ? Thanks Andrew
Recommended Posts
Archived
This topic is now archived and is closed to further replies.