wordpress函數詳解:wp_nav_menu()

    詳細的介紹了wp_nav_menu函數,用于控制wordpress菜單的顯示

    這是一個控制Wordpress主題菜單顯示的函數,這也是在Wordpress主題開發中比較重要的一個函數,詳細的了解此函數有利于學習Wordpress的主題開發。

    此文來源于:《官方函數文檔:wp_nav_menu()

    輸入內容格式如下:

    wp_nav_menu( array $args = array() )

    顯示導航菜單

    這是現成的代碼片段(不是真正的貢獻,比其他任何快捷方式都重要):

    wp_nav_menu( array $args = array(
        'menu'              => "", // (int|string|WP_Term) 所需菜單。接受菜單ID、slug、name或object。
        'menu_class'        => "", // (string) CSS類,用于構成菜單的ul元素。默認menu。
        'menu_id'           => "", // (string) 應用于構成菜單的ul元素的ID。默認為menu slug,遞增。
        'container'         => "", // (string) 是否包裝ul,以及用什么包裝ul。默認div。
        'container_class'   => "", // (string) 應用于容器的類。默認“menu-{menu slug}-container”。
        'container_id'      => "", // (string) 應用于容器的id。
        'fallback_cb'       => "", // (callable|bool) 如果菜單不存在,將啟動回調函數。默認為wp_page_menu。設置為false表示沒有回退。
        'before'            => "", // (string) 鏈接標記前的文本。
        'after'             => "", // (string) Text after the link markup.
        'link_before'       => "", // (string) 鏈接文本之前的文本。
        'link_after'        => "", // (string) Text after the link text.
        'echo'              => "", // (bool) 是回顯菜單還是返回菜單。默認為true。
        'depth'             => "", // (int) 要包含多少層次結構。0表示全部。默認值0。
        'walker'            => "", // (object) 自定義walker類的樣式。
        'theme_location'    => "", // (string) 要使用的主題位置。必須使用register_nav_menu()注冊,以便用戶可以選擇。
        'items_wrap'        => "", // (string) 列表項應如何包裝。默認值是具有id和類的ul。使用帶編號占位符的printf()格式。
        'item_spacing'      => "", // (string) 是否在菜單的HTML中保留空白。接受“preserve”或“discard”。默認preserve。
    ) );

    參數

    $ args

    (array)?(可選)?導航菜單參數的數組。

    • ‘menu’
      (int | string |?WP_Term所需菜單。接受菜單ID,段,名稱或對象。
    • ‘menu_class’
      (字符串)?CSS類,用于形成菜單的ul元素。默認為“菜單”。
    • ‘menu_id’
      (字符串)應用于構成菜單的ul元素的ID。默認為菜單項,遞增。
    • ‘container’
      (字符串)是否包裝ul,以及包裝什么。默認為“ div”。
    • ‘container_class’
      (字符串)應用于容器的類。默認為“菜單-{菜單子彈}-容器”。
    • ‘container_id’
      (字符串)應用于容器的ID。
    • ‘fallback_cb’
      (callable | bool)如果菜單不存在,則將觸發回調函數。默認值為“ wp_page_menu”。設置為false不會回退。
    • ‘before’
      (字符串)鏈接標記之前的文本。
    • “之后”
      (字符串)鏈接標記之后的文本。
    • ‘link_before’
      (字符串)鏈接文本之前的文本。
    • ‘link_after’
      (字符串)鏈接文本之后的文本。
    • ‘echo’
      (布爾)是回顯菜單還是返回菜單。默認為true。
    • ‘depth’
      (int)要包含多少個層次結構。0表示全部。默認值0
    • ‘walker’
      (對象)自定義walker類的實例。
    • ‘theme_location’
      (字符串)要使用的主題位置。必須向register_nav_menu()注冊,以便用戶選擇。
    • ‘items_wrap’
      (字符串)應該如何包裝列表項。默認值為帶有ID和類的ul。使用帶編號占位符的printf()格式。
    • ‘item_spacing’
      (字符串)是否保留菜單HTML內的空格。接受“保留”或“丟棄”。默認為“保留”。

    默認值:array()


    返回

    (string | false | void)如果$ echo為false,則菜單輸出,如果沒有項目或沒有找到菜單,則為false。

    更多信息

    用法

    1個wp_nav_menu( $args );

    給定一個theme_location參數,該函數將顯示分配給該位置的菜單。如果不存在這樣的位置或沒有為其分配菜單,則參數fallback_cb將確定顯示的內容。

    如果未提供theme_location參數,則函數顯示

    • 與菜單參數給定的ID,子段或名稱匹配的菜單;
    • 否則,第一個非空菜單;
    • 否則(或者如果menu給定的菜單為空),則輸出fallback_cb參數給定的函數默認為wp_page_menu());
    • 否則什么都沒有。

    以下類適用于菜單項,即HTML生成的HTML <li>標簽wp_nav_menu()

    所有菜單項

    • .menu-item
      此類添加到每個菜單項。
    • .menu-item-has-children
      此類已添加到具有子項的菜單項。
    • .menu-item-object-{object}
      此類添加到每個菜單項,其中{object}是發布類型或分類法。
    • .menu-item-object-category
      此類已添加到與類別相對應的菜單項中。
    • .menu-item-object-tag
      此類已添加到與標簽相對應的菜單項中。
    • .menu-item-object-page
      此類已添加到與靜態頁面相對應的菜單項中。
    • .menu-item-object-{custom}
      此類已添加到與自定義帖子類型或自定義分類法相對應的菜單項。
    • .menu-item-type-{type}
      此類添加到每個菜單項,其中{type}是“ post_type”或“分類”。
    • .menu-item-type-post_type
      此類被添加到與帖子類型相對應的菜單項中:靜態頁面或自定義帖子類型。
    • .menu-item-type-taxonomy
      將此類添加到與分類法相對應的菜單項:即類別,標簽或自定義分類法。

    當前頁面菜單項

    • .current-menu-item
      此類已添加到與當前呈現的頁面相對應的菜單項中。

    當前頁面父菜單項

    • .current-menu-parent
      此類已添加到與當前呈現的頁面的層次結構父級相對應的菜單項中。
    • .current-{object}-parent
      此類被添加到與當前渲染的對象的層次父級相對應的菜單項中,其中{object}對應于.menu-item-object- {object}所使用的值。
    • .current-{type}-parent
      此類已添加到與當前呈現的類型的層級父級相對應的菜單項中,其中{type}對應于.menu-item-type- {type}所使用的值。

    當前頁面祖先菜單項

    • .current-menu-ancestor
      此類被添加到與當前呈現的頁面的層次祖先相對應的菜單項中。
    • .current-{object}-ancestor
      此類已添加到與當前渲染的對象的層級祖先相對應的菜單項中,其中{object}對應于.menu-item-object- {object}所使用的值。
    • .current-{type}-ancestor
      此類被添加到與當前呈現類型的層次結構祖先相對應的菜單項中,其中{type}對應于.menu-item-type- {type}所使用的值。

    網站首頁菜單項

    • .menu-item-home
      此類已添加到與網站首頁相對應的菜單項中。

    并且向后兼容wp_page_menu()

    添加了以下類以保持與[[Function Reference / wp_page_menu |?wp_page_menu()?]]函數輸出:

    • .page_item
      此類已添加到與靜態頁面相對應的菜單項中。
    • .page_item_has_children
      此類被添加到具有子頁面的菜單項中。
    • .page-item-$ID
      此類被添加到與靜態頁面相對應的菜單項中,其中$ ID是靜態頁面ID。
    • .current_page_item
      此類被添加到與當前呈現的靜態頁面相對應的菜單項中。
    • .current_page_parent
      此類已添加到與當前呈現的靜態頁面的層次結構父級相對應的菜單項中。
    • .current_page_ancestor
      此類已添加到與當前呈現的靜態頁面的分層祖先相對應的菜單項中。

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優惠劵
    搜索
    主站蜘蛛池模板: 亚洲无人区一区二区三区| 69福利视频一区二区| 国产一区二区三区精品视频| 又紧又大又爽精品一区二区| 伦理一区二区三区| 精品一区二区三区在线播放视频| 最新欧美精品一区二区三区| 国产伦精品一区二区免费| 精品国产高清自在线一区二区三区| 丝袜人妻一区二区三区网站| 女人18毛片a级毛片一区二区| 国产午夜精品一区二区三区漫画| 一本一道波多野结衣AV一区| 亚洲愉拍一区二区三区| 中文字幕乱码亚洲精品一区 | 人妻无码一区二区三区| 亚洲性色精品一区二区在线| 久久久久人妻一区二区三区vr| 区三区激情福利综合中文字幕在线一区亚洲视频1 | 亚洲无圣光一区二区| 国产精品伦一区二区三级视频| 精品国产一区二区22| 久久无码人妻精品一区二区三区| 日韩精品午夜视频一区二区三区| 精品亚洲av无码一区二区柚蜜| 中文字幕日韩精品一区二区三区| 3d动漫精品啪啪一区二区中文| 久久无码人妻一区二区三区| 无码国产精品一区二区免费| 日韩成人无码一区二区三区| 国产乱码精品一区二区三区 | 四虎一区二区成人免费影院网址| 无码人妻一区二区三区兔费| 国产亚洲福利精品一区二区| 精品一区二区三区免费观看 | 国产精品亚洲一区二区三区久久| 在线精品自拍亚洲第一区| 久久国产精品一区| 亚洲一区二区三区在线网站| 无码精品久久一区二区三区| 亚洲AV无码一区二区二三区软件|