awesomized Posted April 17, 2007 Posted April 17, 2007 If you change the category box font in the style sheet, it will change all of the text. How can you just change the first categories to be bold when unselected and still keep the sub categories as plain text? I've been trying to figure this out for a couple of days now with no luck. I'd appreciate it if someone could help me with this. Thanks.
Guest Posted April 17, 2007 Posted April 17, 2007 If you change the category box font in the style sheet, it will change all of the text. How can you just change the first categories to be bold when unselected and still keep the sub categories as plain text? I've been trying to figure this out for a couple of days now with no luck. I'd appreciate it if someone could help me with this. Thanks. in file : include/boxes/categories.php : change this : 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>'; } to this : if ($tree[$counter]['parent'] == 0) { $categories_string .= '<b>'; } // display category name $categories_string .= $tree[$counter]['name']; if ($tree[$counter]['parent'] == 0) { $categories_string .= '</b>'; } Corrina
awesomized Posted April 17, 2007 Author Posted April 17, 2007 Thanks Corrina but I couldn't find that code in my categories.php file This is what my categories.php file looks like... <?php /* $Id: all_categories.php,v 1.6 2002/04/22 20:34:00 clescuyer Exp $ */ // Keep out parts category $excluded_parts_category_id = 28; // Preorder tree traversal function preorder($cid, $level, $foo, $cpath) { global $categories_string, $HTTP_GET_VARS; if ($cid != 0) { // 1.7 Get the current path info $category_path = explode('_',$HTTP_GET_VARS['cPath']); $in_path = in_array($cid, $category_path); $this_category = array_pop($category_path); for ($i=0; $i<$level; $i++) // 1.7 only indent subcategories (top level are flush left) if ($i>0) { $categories_string .= ' '; } // 1.7 indicate the current category if ($this_category == $cid) { $categories_string .= '<b><font color="ff9900">•</font></b> '; } // 1.7 don't link the current category if ($this_category != $cid) { $categories_string .= '<a href="' . tep_href_link(FILENAME_DEFAULT, 'cPath=' . $cpath . $cid) . '">'; } // 1.6 Are we on the "path" to selected category? If yes, use <b> if ($in_path) { $categories_string .= '<b><font color="009999">'; } $categories_string .= $foo[$cid]['name']; if ($in_path) $categories_string .= '</b></font>'; // 1.7 don't link the current category if ($this_category != $cid) { $categories_string .= '</a>'; } // 1.4 SHOW_COUNTS is 'true' or 'false', not true or false if (SHOW_COUNTS == 'true') { $products_in_category = tep_count_products_in_category($cid); if ($products_in_category > 0) { $categories_string .= ' (' . $products_in_category . ')'; } } $categories_string .= '<br>' ."\n"; } // Traverse category tree foreach ($foo as $key => $value) { if ($foo[$key]['parent'] == $cid) { // print "$key, $level, $cid, $cpath<br>"; preorder($key, $level+1, $foo, ($level != 0 ? $cpath . $cid . '_' : '')); } } } ?> <!-- all_categories //--> <tr> <td> <?php ////////// // Display box heading ////////// //$info_box_contents = array(); //$info_box_contents[] = array('align' => 'left', 'text' => BOX_HEADING_CATEGORIES); //new infoBoxHeading($info_box_contents, true, false); ////////// // Get categories list ////////// // 1.2 Test for presence of status field for compatibility with older versions $status = tep_db_num_rows(tep_db_query('describe categories status')); $query = "select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = cd.categories_id"; // 1.3 Can't have 'where' in an if statement! if ($status >0) $query.= " and c.status = '1'"; $query.= " and cd.language_id='" . $languages_id ."' order by sort_order, cd.categories_name"; $categories_query = tep_db_query($query); // Stuff in an array while ($categories = tep_db_fetch_array($categories_query)) { $foo[$categories['categories_id']] = array('name' => $categories['categories_name'], 'parent' => $categories['parent_id']); } // Initiate tree traverse $categories_string = ''; preorder(0, 0, $foo, ''); ////////// // Display box contents ////////// $info_box_contents = array(); $info_box_contents[] = array('align' => 'left', 'text' => $categories_string); new infoBox($info_box_contents); ?> </td> </tr> <!-- all_categories_eof //--> What would I need to change in this code?
awesomized Posted April 18, 2007 Author Posted April 18, 2007 Can anyone please help me figure this out or at least point me in the right direction as to what code I would need to edit to change only the parent category font attributes? Thanks
Historian Posted May 10, 2007 Posted May 10, 2007 in file :include/boxes/categories.php : change this : 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>'; } to this : if ($tree[$counter]['parent'] == 0) { $categories_string .= '<b>'; } // display category name $categories_string .= $tree[$counter]['name']; if ($tree[$counter]['parent'] == 0) { $categories_string .= '</b>'; } Corrina Thank you - This works fine. I am new to php, but I'm fine with HTML & CSS. Can you please tell me how to put in other commands than bold - such as fontsize? Ideally I would like to put in a CSS class instruction, but I don't know if that is possible. Can you help me please?
Recommended Posts
Archived
This topic is now archived and is closed to further replies.