Динамические заголовочные меню, общие для всех страниц в codeigniter - PullRequest
0 голосов
/ 08 января 2019

Я хочу создать динамическое меню, и это динамическое меню является общим для всех страниц моего сайта. Это то, что я сделал в php, но я должен добиться того же, используя codeigniter. Итак, что делать, чтобы показать все меню на всех страницах.

Я сделал это на контроллере.

    if(!isset($courses['code'])){
        $data['courses'] = $courses;
    }


    $this->load->view('common/'.$page, $data);

где $ page = заголовок.

ЭТА ФУНКЦИЯ В МОЕЙ МОДЕЛИ КУРСА.

публичная функция fetchCourses () {

    $this->db->select('id, course_name, image, sort_order, parent_id, date_added, status');
    $this->db->from('ls_courses');
    $query = $this->db->get();

    if(!empty($query->result_array()))
    {
        return $query->result_array();
    }
    else
    {
        return $this->db->error();
    }
}

И это мой взгляд UL.

            <li class="active"><a href="<?php echo base_url(''); ?>">Home</a></li>

            <li><a href="<?php echo base_url('about'); ?>">About Us</a></li>

            <li><a href="<?php echo base_url('courses'); ?>">Courses<i class="fa fa-angle-down"></i></a>

              <ul class="dropdown_menu">

                <?php if(isset($courses) && !empty($courses)) { ?>
                <?php foreach ($courses as $key => $value) {?>

                <li><a href=""><?php echo $value['course_name']; ?></a>
                  <?php } ?>
                  <?php } ?>

       <?php if(isset($childcourses) && !empty($childcourses)) {  ?>
                 <?php foreach ($childcourses as $key => $value) { ?>
                                            <li><a href="<?php echo base_url('course/details/'.$value['seo_url']); ?>"><?php echo $value['course_name']; ?></a></li>
                            <?php } ?>
                            <?php } ?>

1 Ответ

0 голосов
/ 08 января 2019

есть так много помощников для макета шаблона ... или просто ... добавьте еще один метод во все ваши контроллеры ...

function template($page_name,$data,$headrdata,$footerdata)
{
 $this->load->view('header',$headrdata);
$this->load->view($page_name,$data);
$this->load->view('footer',$footerdata);
}

и загрузить вид как

if(!isset($courses['code'])){
    $data['courses'] = $courses;
}
$this->template('view_name',$data,$headrdata,footerdata);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...