• Thế giới của tôi
  • Công nghệ
  • Nghệ thuật
  • Giải trí
  • Chế tạo Diy
  • Video
  • Phòng trưng bày
  • Quảng cáo
Thế giới của tôi
  • Trang chủ
  • Công nghệ

    Bán hàng online hiệu quả qua Instagram

    Hướng dẫn trỏ tên miền Namesilo về VPS Vultr

    Trang web tạo mật khẩu ngẫu nhiên cực hay

    Hướng dẫn bật nén Gzip trong Nginx cực đơn giản

    Cấu hình plugin Wp Rocket hay

    Hướng dẫn trỏ tên miền Name về VPS Vultr

    Tên miền

    Bật tính năng của ảnh trong wordpress 3.0

    Tầm quan trọng hình ảnh sản phẩm trong bán hàng online

  • Nghệ thuật
  • Giải trí
  • Chế tạo Diy
  • Video
  • Phòng trưng bày
No Result
View All Result
  • Trang chủ
  • Công nghệ

    Bán hàng online hiệu quả qua Instagram

    Hướng dẫn trỏ tên miền Namesilo về VPS Vultr

    Trang web tạo mật khẩu ngẫu nhiên cực hay

    Hướng dẫn bật nén Gzip trong Nginx cực đơn giản

    Cấu hình plugin Wp Rocket hay

    Hướng dẫn trỏ tên miền Name về VPS Vultr

    Tên miền

    Bật tính năng của ảnh trong wordpress 3.0

    Tầm quan trọng hình ảnh sản phẩm trong bán hàng online

  • Nghệ thuật
  • Giải trí
  • Chế tạo Diy
  • Video
  • Phòng trưng bày
No Result
View All Result
Thế Giới Của Tôi
No Result
View All Result
Home Function

Widget tùy chỉnh menu ẩn hiện từng page khác nhau

Mai Linh by Mai Linh
24 Tháng Bảy, 2019
4 min read
0
Share on FacebookShare on Twitter

Xem nhanh tại đây.

  1. Code widget tùy chỉnh menu ẩn hiện ở từng page

Do yêu cầu của website là mỗi page là 1 menu khác nhau. lên mình có viết 1 widgets dựa trên widget menu mặc định của wordpress có thêm 1 số chức năng như. Chọn hiện hoặc ẩn. Hiện ở page nào, ẩn ở page nào hay chỉ hiện ở 1 page hoặc ẩn ở 1 page còn hiện ở toàn bộ các page.

  1. Code widget tùy chỉnh menu ẩn hiện ở từng page

    Các bạn có thể chèn code sau vào file functions.php hoặc tạo 1 file riêng rồi require_once file đó vào file functions.php là ok.
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    add_action('widgets_init', 'menu_svl_load_widgets');
    function menu_svl_load_widgets()
    {
    register_widget('Menu_Page_Widget');
    }
    class Menu_Page_Widget extends WP_Widget {
    function Menu_Page_Widget()
    {
    $widget_ops = array('classname' => 'menu_svl_comment', 'description' => 'Adds support for custom menu.');
    $control_ops = array('id_base' => 'menu_svl-widget');
    $this->WP_Widget('menu_svl-widget', 'OnegoCorp: Custom menu page', $widget_ops, $control_ops);
    }
    function widget($args, $instance)
    {
    extract($args);
    $title = apply_filters('widget_title', $instance['title']);
    $nav_menu = ! empty( $instance['nav_menu'] ) ? wp_get_nav_menu_object( $instance['nav_menu'] ) : false;
    $hide_show = $instance['hide_show'];
    $show_page = $instance['show_page'];
    if ( !$nav_menu )
    return;
    if($hide_show == 1){
    if(!is_page($show_page)){
    echo $before_widget;
    if($title) {
    echo $before_title.$title.$after_title;
    }
    wp_nav_menu( array( 'fallback_cb' => '', 'menu' => $nav_menu ) );
    echo $after_widget;
    }
    }elseif ($hide_show == 2){
    if(is_page($show_page)){
    echo $before_widget;
    if($title) {
    echo $before_title.$title.$after_title;
    }
    wp_nav_menu( array( 'fallback_cb' => '', 'menu' => $nav_menu ) );
    echo $after_widget;
    }
    }else{
    echo $before_widget;
    if($title) {
    echo $before_title.$title.$after_title;
    }
    wp_nav_menu( array( 'fallback_cb' => '', 'menu' => $nav_menu ) );
    echo $after_widget;
    }
    }
    function update($new_instance, $old_instance)
    {
    $instance = $old_instance;
    $instance['title'] = strip_tags($new_instance['title']);
    $instance['nav_menu'] = (int)$new_instance['nav_menu'];
    $instance['hide_show'] = (int)$new_instance['hide_show'];
    $instance['show_page'] = (int)$new_instance['show_page'];
    return $instance;
    }
    function form($instance)
    {
    $defaults = array('title' => '');
    $instance = wp_parse_args((array) $instance, $defaults);
    $nav_menu = isset( $instance['nav_menu'] ) ? $instance['nav_menu'] : '';
    $hide_show = isset( $instance['hide_show'] ) ? $instance['hide_show'] : '';
    $show_page = isset( $instance['show_page'] ) ? $instance['show_page'] : '';
    // Get menus
    $menus = wp_get_nav_menus( array( 'orderby' => 'name' ) );
    $pages = get_pages();
    ?>

    }
    }
    ?>

Chúc các bạn thành công!

Nguồn: levantoan[.]com

Previous Post

Di chuyển Javascript xuống footer trong WordPress

Next Post

Thay chữ Sale bằng % giảm giá trong woocommerce

Mai Linh

Mai Linh

chuyên wordpress, function, php, code, ...

Next Post

Thay chữ Sale bằng % giảm giá trong woocommerce

No Result
View All Result

Bài viết mới

  • Một mẫu slider đẹp
  • Cách tạo vị trí menu wordpress
  • Khai báo custom post type trong wordpress
  • Sửa lỗi Because app requires SDK version >=2.15.1 <3.0.0 version solving failed
  • Cách đặt nhân vật tiếng trung phồn thể cho game Jx3 Quốc tế

Phản hồi gần đây

    Chuyên mục

    • Bảo mật website
    • Bẻ khóa theme plugin
    • Cắt giấy
    • Chụp ảnh
    • Chụp ảnh sản phẩm
    • Code tiện ích cho website
    • Code trang trí mở rộng
    • Công cụ Tools
    • Công nghệ
    • CSS
    • Digital Marketing
    • Function
    • Game Jx2
    • Game Jx3
    • Game Online
    • Gian hàng online
    • Hosting
    • HTML
    • Instagram
    • Kirigami
    • Kirigami 0 độ
    • Kirigami 180 độ
    • Kirigami 360 độ
    • Kirigami 90 độ
    • Mã độc hại website
    • Marketing Online
    • Máy chủ ảo VPS
    • Origami
    • Paper Craft
    • Phần mềm máy tính cơ bản
    • Php
    • Quilling
    • SEO
    • SEO Offpage
    • SEO Onpage
    • Share theme plugin
    • Shopee
    • Sửa ảnh
    • Tăng doanh thu bán hàng
    • Tên miền
    • Thông tin thế giới của tôi
    • Tối ưu tốc độ web
    • Windows
    • Wordpress

    Recent News

    Một mẫu slider đẹp

    29 Tháng Sáu, 2023

    Cách tạo vị trí menu wordpress

    20 Tháng Tư, 2023
    • Giới thiệu
    • Quảng cáo
    • Bảo mật
    • Liên hệ

    © 2019 Thế Giới Của Tôi - Thiết kế & xây dựng bởi Ngôi Nhà Web.vn.

    No Result
    View All Result
    • Thế giới của tôi
    • Công nghệ
    • Nghệ thuật
    • Giải trí
    • Chế tạo Diy
    • Video
    • Phòng trưng bày
    • Quảng cáo

    © 2019 Thế Giới Của Tôi - Thiết kế & xây dựng bởi Ngôi Nhà Web.vn.