wp_get_nav_menu_items($menu_id)) && count($menu)) { foreach ($menu as $item) { // find the child menu items if ($parent_menu_item_id == $item->menu_item_parent) { $childrens[$item->ID] = array( 'id' => $item->ID, 'title' => $item->title, ); } } } return $childrens; } function wp_get_nav_menu_items($menu_id) { $quadmenu_menu_items = wp_cache_get("wp_get_nav_menu_items_{$menu_id}", 'quadmenu'); if ($quadmenu_menu_items === false) { $quadmenu_menu_items = wp_get_nav_menu_items($menu_id); wp_cache_set("wp_get_nav_menu_items_{$menu_id}", $quadmenu_menu_items, 'quadmenu'); } return $quadmenu_menu_items; } public function nav_menu_item_settings($setting, $item) { $type = $setting['type']; //$desc = isset($setting['desc']) ? '' : ''; //$tip = isset($setting['tip']) ? '
' : ''; $value = $item->{$setting['db']}; $id = 'menu-item-' . $setting['db']; $name = 'menu-item-' . $setting['id']; $class = 'menu-item-quadmenu-setting ' . $id; $ops = ''; if (isset($setting['ops'])) { $ops = $setting['ops']; if (!is_array($ops) && function_exists($ops)) { if (isset($setting['ops_args'])) { $ops = $ops($setting['ops_args']); } else $ops = $ops(); } } switch ($type) { case 'checkbox': ?> $_name): ?> $_name): ?> 0, 'size' => '', 'position' => '', 'repeat' => '', 'origin' => 'border-box', 'opacity' => 1, ); $value = wp_parse_args($value, $defaults); $_src = !empty($value['thumbnail-id']) ? wp_get_attachment_image_src($value['thumbnail-id'], 'thumbnail') : false; $_url = !empty($value['thumbnail-id']) ? wp_get_attachment_image_src($value['thumbnail-id'], 'full') : false; $have_media = ( strlen($_src[0]) > 0 ? 'active' : '' ); ?> 0 ? 'active' : '' ); ?> nav_menu_item_fields($menu_obj); ob_start(); if (in_array($menu_obj->object, array('search', 'cart', 'login', 'column'))) { $settings = array_diff($settings, array('url', 'target', 'xfn', 'description')); } if (in_array($menu_obj->type, array('taxonomy', 'post_type', 'post_type_archive'))) { $settings = array_diff($settings, array('url')); } ?> {$menu_obj->quadmenu}->panels->$panel->settings) { QuadMenu::send_json_error(json_encode($menu_obj)); } if ($form = $this->form($menu_obj, 0, $settings)) { QuadMenu::send_json_success($form); } else { QuadMenu::send_json_error(json_encode($menu_obj)); } wp_die(); } public function panels($menu_item_depth, $menu_obj, $menu_id) { $items = QuadMenu_Configuration::custom_nav_menu_items(); $this->panels = $items->{$menu_obj->quadmenu}->panels; ?>