This is the line in tpl_categories.php that decides whether a category gets displayed:
PHP Code:
if (zen_get_product_types_to_category($box_categories_array[$i]['path']) == 3 or ($box_categories_array[$i]['top'] != 'true' and SHOW_CATEGORIES_SUBCATEGORIES_ALWAYS != 1)) {
// skip if this is for the document box (==3)
} else {
This line has a test for the current category:
if ($box_categories_array[$i]['current']) {
A subcategory will have a _ in the cPath, but a top category won't.
So you could add a test for the category being a top cat and not current, and skip it:
or (!ereg("_",$cPath) and !$box_categories_array[$i]['current'])
PHP Code:
if (zen_get_product_types_to_category($box_categories_array[$i]['path']) == 3 or ($box_categories_array[$i]['top'] != 'true' and SHOW_CATEGORIES_SUBCATEGORIES_ALWAYS != 1) or (!ereg("_",$cPath) and !$box_categories_array[$i]['current'])) {
// skip if this is for the document box (==3) or non-current top cat(_, current)
} else {
You could also use
or ($box_categories_array[$i]['top'] == 'true' and !$box_categories_array[$i]['current'])
as a test.