Welcome Guest, Not a member yet? Register   Sign In
Multi level menu from database (parent->child)
#7

[eluser]JimmyJ[/eluser]
Ok this seems to work - after digging around other posts.
Code:
<?php


class Menu_model extends CI_Model {
    
    function get_menu_structure(){
        //$this->db->where('parent',$parent);
        $this->db->order_by('menu_position','asc');
        $this->db->select('*')->from('content_menus', 'content');
        $this->db->join('content', 'content.id = content_menus.content_id', 'left');
        $q=$this->db->get();
        foreach($q->result() as $r){
            
            $data[$r->parent][] = $r;
        }
        $menu=$this->build_menu($data, 1); // From Parent ID 1
        return $menu;
    }
    
    
    function build_menu($category, $parent){
        static $i = 1;
        $path = '';
        if (array_key_exists($parent, $category)) {
            $menu = '<ul>';
            $i++;
            foreach ($category[$parent] as $r) {
                $child = $this->build_menu($category, $r->menu_id);
                $path .= $r->url_key;
                $menu .= '<li>';
                $menu .= '<a href="/'.$path.'">'.$r->content_menu_title.'</a>';
                if ($child) {
                    $i--;
                    $menu .= $child;
                }
                $menu .= '</li>';
            }
            $menu .= '</ul>';
            return $menu;
        } else {
            return false;
        }
    }


}

Now I've got to work out how to create the path correctly. For example /services/web-design/html

Does anyone know how I'd go about this?


Messages In This Thread
Multi level menu from database (parent->child) - by El Forum - 02-17-2011, 10:36 AM
Multi level menu from database (parent->child) - by El Forum - 02-17-2011, 12:14 PM
Multi level menu from database (parent->child) - by El Forum - 02-17-2011, 01:28 PM
Multi level menu from database (parent->child) - by El Forum - 02-17-2011, 01:30 PM
Multi level menu from database (parent->child) - by El Forum - 02-17-2011, 02:00 PM
Multi level menu from database (parent->child) - by El Forum - 02-17-2011, 02:37 PM
Multi level menu from database (parent->child) - by El Forum - 02-18-2011, 12:54 PM



Theme © iAndrew 2016 - Forum software by © MyBB