Итак, в основном я пытаюсь получить список категорий из базы данных и поместить его в переменную с именем $ data ['category'].
В представлении я перечисляю это, просто используя оператор foreach (). Все идет нормально.
Хотя некоторые категории имеют подкатегории (не все). Теперь я добавил в базу данных строку «is_direct» (имеет подкатегории или нет), которая показывает, есть ли у категории подкатегории.
Теперь я хочу перечислить эти подкатегории, если они существуют.
Здесь метод для отображения заголовка (где будут перечислены категории и подкатегории) (не обращайте внимания на личное, так и должно быть).
private function show_header($template='default',$page_name='default')
{
// Get the categories.
$data['categories'] = $this->CI->ws_category->get_categories();
// Display the header.
$this->CI->load->view("templates/".$template."/template/header",$data);
}
Этот метод вызывает метод get_categories (), который показан ниже (простая активная запись).
public function get_categories()
{
// Prepare the SQL query.
$this->db->select('*');
$this->db->from(APP_PREFIX.'categories');
$this->db->order_by('name_clean');
// Execute the query.
$query = $this->db->get();
// Get the results from the query.
$result = $query->result_array();
// Return the array with data.
return $result;
}
А под видом вы можете видеть, куда подменю пойдет.
<?php
// Loop through all the categories.
foreach ($categories as $item):
?>
<li class='nav_link <?php ($item['is_direct'] == '1' ? 'nav_subcats' : ''); ?>'>
<a href='<?php echo base_url().'category/'.$item['category_id'].'-'.$item['name_clean'].'.html';?>' class='nav_main_link'><?php echo $item['name']; ?></a>
<?php
// In case subcategories are present.
if ($item['is_direct'] != '1')
{
?>
<div class='nav_submenu'>
<ul>
<li><a href='#' class='nav_sub_link'>submenu item</a></li>
</ul>
</div>
<?php
}
?>
</li>
<?php
// End the loop.
endforeach;
?>
Может ли кто-нибудь мне помочь?
Спасибо.