zoukankan      html  css  js  c++  java
  • WordPress菜单函数wp_nav_menu()详细介绍

    导航菜单函数wp_nav_menu()进行详细的说明。

    1、wp_nav_menu()函数介绍:

    worpdress发展到3.0以后增加了一个自定义菜单函数wp_nav_menu(),使得wordpress能够轻松的制作自己的导航菜单。

    2、如何调用导航菜单(自定义菜单):

    在需要调用导航菜单(或者称之为自定义菜单)的地方插入<?php wp_nav_menu($args) ;?>来调用导航菜单,其中$args是函数的参数,后面会详细说明。

    3、wp_nav_menu($args)函数中,参数$args的默认值:

    1. <?php $defaults = array(
    2. ’theme_location’  => ,
    3. ’menu’            => ,
    4. ’container’       => ’div’,
    5. ’container_class’ => ’menu-{menu slug}-container’,
    6. ’container_id’    => ,
    7. ’menu_class’      => ’menu’,
    8. ’menu_id’         => ,
    9. echo’            => true,
    10. ’fallback_cb’     => ’wp_page_menu’,
    11. ’before’          => ,
    12. ’after’           => ,
    13. ’link_before’     => ,
    14. ’link_after’      => ,
    15. ’items_wrap’      => ’<ul id=”%1$s” class=”%2$s”>%3$s</ul>’,
    16. ’depth’           => 0,
    17. ’walker’          => );
    18. ?>

    4、wp_nav_menu($args)函数中每个参数的具体含义:

    $theme_locaton:(字符串)(可选)

    默认值: None

    用于在调用导航菜单时指定注册过的某一个导航菜单名,如果没有指定,则显示第一个。

    1. wp_nav_menu(array(    ‘theme_location’   =>’primary’)); //调用第一个菜单。

    $menu:(字符串)(可选)

    默认值: None

    使用导航菜单的名称调用菜单,可以是 id, slug, name (按顺序匹配的) 。

    $container:(字符串)(可选)

    默认值: div

    ul 父节点(这里指导航菜单的容器)的标签类型,只支持div 和 nav 标签, 如果是其它值, ul 父节点的标签将不会被显示。也可以用false(container => false)去掉ul父节点标签。

    $container_class:(字符串)(可选)

    默认值: menu-{menu slug}-container

    ul 父节点的 class 属性值。

    $container_id:(字符串)(可选)

    默认值: None

    ul 父节点的 id 属性值。

    $menu_class:(字符串)(可选)

    默认值: menu

    ul 节点的 class 属性值。

    $menu_id:(字符串)(可选)

    默认值: menu slug, 自增长的

    ul 节点的 id 属性值。

    $echo:(布尔型)(可选)

    默认值: true (直接显示)

    确定直接显示导航菜单还是返回 HTML 片段,如果想将导航的代码作为赋值使用,可设置为false。

    $fallback_cb:(字符串)(可选)

    默认值: wp_page_menu (显示页面列表作为菜单)

    用于没有在后台设置导航时调的回调函数。

    $before:(字符串)(可选)

    默认值: None

    显示在每个菜单链接前的文本。

    $after:(字符串)(可选)

    默认值: None

    显示在每个菜单链接后的文本。

    $link_before:(字符串)(可选)

    默认值: None

    显示在每个菜单链接文本前的文本。

    $link_after:(字符串)(可选)

    默认值: None

    显示在每个菜单链接文本后的文本。

    $items_wrap:(字符串)(可选)

    默认值: None

    使用字符串替换修改ul的class。

    $depth:(整型)(可选)

    默认值: 0

    显示菜单的深度, 当数值为 0 时显示所有深度的菜单。

    $walker:(对象型)(可选)

    默认值: new Walker_Nav_Menu

    自定义的遍历对象,调用一个对象定义显示导航菜单。

    5、如何兼容旧版本的wordpress:

    利用参数$fallback_cb来实现对旧版本的wordpress的兼容,将参数 ‘sort_column’=>’menu_order’ 写入 wp_nav_menu 的参数, 那该参数同时也会传递到 call_user_func 方法中. 如果 call_user_func 是 wp_page_menu 方法, 那么显示的页面列表将会以赋予的序号排序输出.

    1. if ( ( !$menu || is_wp_error($menu) || ( isset($menu_items) && emptyempty($menu_items) && !$args->theme_location ) )  
    2. && ( function_exists($args->fallback_cb) || is_callable( $args->fallback_cb ) ) )  
    3. return call_user_func( $args->fallback_cb, (array) $args );  
    4. // 如果找不到指定菜单, 或者菜单不存在任何条目并没有指定自定义菜单, 使用 call_user_func 方法来进行处理 
  • 相关阅读:
    go函数
    Linux 查看磁盘容量、查找大文件、查找大目录
    五分钟理解一致性哈希算法(consistent hashing)
    使用Java实现三个线程交替打印0-74
    Python实现IOC控制反转
    Wannafly挑战赛5 A珂朵莉与宇宙 前缀和+枚举平方数
    Yandex Big Data Essentials Week1 Scaling Distributed File System
    Yandex Big Data Essentials Week1 Unix Command Line Interface Processes managing
    Yandex Big Data Essentials Week1 Unix Command Line Interface File Content exploration
    Yandex Big Data Essentials Week1 Unix Command Line Interface File System exploration
  • 原文地址:https://www.cnblogs.com/bojuetech/p/4891466.html
Copyright © 2011-2022 走看看