File: /www/wwwroot/www.scdc-marine.com/wp-content/themes/heku-cms/HekuClass/Admin/Cmb2NavMenu.php
<?php
namespace Heku\HekuClass\Admin;
/**
* @package Heku\HekuClass\Admin
* @subpackage Classes/Cmb2NavMenu
* @author Heku Daleconan <http://www.daleconan.com>
* @copyright Copyright (c) 2022-2023, Heku Daleconan
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
*
* 后台 菜单导航,自定义参数,和展示形式
*
*/
class Cmb2NavMenu {
/**
* 类实现单例模式,类的独生子女
*/
private static $instance;
/**
* 依赖注入的接口 Instance 方法
* 目标是 保证 init() 初始化方法 只执行一次
*
* @return self 唯一实例化的本类
*/
public static function instance() {
if ( ! isset( self::$instance ) ) {
self::$instance = new self;
self::$instance->init();
}
return self::$instance;
}
public function init(){
add_filter('cmb2_nav_menus', array(__CLASS__,'regeister_menu'),90, 1);
//add_filter('cmb2_nav_menu_fields_ym-menu', array(__CLASS__,'top_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_header-menu', array(__CLASS__,'top_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_post', array(__CLASS__,'top_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_newsflashes', array(__CLASS__,'top_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_sidebar-product', array(__CLASS__,'sidebar_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_shop', array(__CLASS__,'top_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_circle', array(__CLASS__,'top_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_links', array(__CLASS__,'top_menu_custon_field'),99, 1);
add_filter('cmb2_nav_menu_fields_infomation', array(__CLASS__,'top_menu_custon_field'),99, 1);
}
public static function regeister_menu($menu_slugs){
//$menu_slugs[] = 'ym-menu';
$menu_slugs[] = 'header-menu';
$menu_slugs[] = 'post';
$menu_slugs[] = 'newsflashes';
$menu_slugs[] = 'sidebar-product';
$menu_slugs[] = 'shop';
$menu_slugs[] = 'circle';
$menu_slugs[] = 'links';
$menu_slugs[] = 'infomation';
return $menu_slugs;
}
public static function top_menu_custon_field($fields){
$fields['menu_type'] = array(
'name' => __( '一级菜单形式', 'heku' ),
'id'=>'menu_type',
'type' => 'radio_image',
'options' => array(
'menu-type1' => __('下拉菜单','jikelao'),
'menu-type2' => __('列表菜单','jikelao'),
'menu-type3' => __('图片菜单','jikelao'),
'menu-type4' => __('分类菜单','jikelao'),
),
'images_path' => HEKU_THEME_URI,
'images' => array(
'menu-type1' => '/Assets/admin/images/menu-1.svg',
'menu-type2' => '/Assets/admin/images/menu-1.gif',
'menu-type3' => '/Assets/admin/images/menu-1.svg',
'menu-type4' => '/Assets/admin/images/menu-2.gif '
),
'default'=>'menu-3'
);
/* $fields['sub_menu_type'] = array(
'name' => __( '二级子菜单形式', 'heku' ),
'id'=>'menu_type',
'type' => 'radio_image',
'options' => array(
'sub_menu-type1' => __('下拉菜单','jikelao'),
'sub_menu-type2' => __('列表菜单','jikelao'),
'sub_menu-type3' => __('图片菜单','jikelao'),
'sub_menu-type4' => __('分类菜单','jikelao'),
),
'images_path' => HEKU_THEME_URI,
'images' => array(
'sub_menu-type1' => '/Assets/admin/images/menu-1.png',
'sub_menu-type2' => '/Assets/admin/images/menu-4.svg',
'sub_menu-type3' => '/Assets/admin/images/menu-1.svg',
'sub_menu-type4' => '/Assets/admin/images/menu-2.gif '
),
'default'=>'menu-3'
); */
$fields['menu_color'] = array(
'name' =>__('菜单颜色','heku'),
'id'=>'menu_color',
'type' => 'colorpicker',
'default'=>'#fc3c2d',
'desc' => __('请选择菜单的颜色','heku')
);
$fields['menu_img'] = array(
'name' =>__('菜单图片(图标)','heku'),
'id'=>'menu_img',
'type' => 'file',
'desc' => __('请选择菜单图片(图标),在选择图片菜单模式下将会显示在菜单中','b2')
);
return $fields;
}
public static function sidebar_menu_custon_field($fields){
$fields['sidebar_menu_img'] = array(
'name' =>__('菜单图片(图标)','heku'),
'id'=>'menu_img',
'type' => 'file',
'desc' => __('请选择菜单图片(图标),在选择图片菜单模式下将会显示在菜单中','heku')
);
return $fields;
}
}