【问题标题】:wordpress get list of all header menu itemswordpress 获取所有标题菜单项的列表
【发布时间】:2018-04-29 22:06:59
【问题描述】:

我有一个 Wordpress 网站。在其中一个页面上,我想显示标题中的项目列表。我真的不想显示标题本身。

例如,我通过转到 wp-admin->Appreance->Header->Menu-TopMenu 在 wordpress 主题中为标题设置了此设置

Home | About | Contact

现在在其中一个模板中,我想将这三个项目的数组作为

{Home, About, Contact}

有什么 Wordpress 方法可以获取这个?

查看默认的 header.php,我看到了这段代码,但我不明白我是如何从中得到我需要的。

<?php wp_nav_menu( array(
    'theme_location' => 'top',
    'menu_id'        => 'top-menu',
) ); ?>

【问题讨论】:

    标签: php wordpress header


    【解决方案1】:

    你的问题不是很清楚。如果您想在特定页面上显示单独的菜单,您可以有两个选项。例如,如果您想在 about 页面上显示不同的菜单。

    1. 在你的 header.php.

      if(is_page('about')) { //about is the slug of the page. wp_nav_menu( array( 'menu' => 'about' //Here about is the name or slug of the menu ) ); } else { // All other pages we can display the default menu. wp_nav_menu( array( 'theme_location' => 'top', 'menu_id' => 'top-menu', ) ); }

    2. 如果您想在about 页面上显示完全不同的标题。

    创建一个名为 header-about.php 的新头文件,其中 about 是 about 页面的 slug。或者您也可以使用页面 id 并放置关于页面所需的标题内容。所有其他页面将加载默认的header.php 文件。

    请参考这些codex函数

    1. https://developer.wordpress.org/reference/functions/wp_nav_menu/
    2. https://developer.wordpress.org/reference/functions/is_page/

    【讨论】:

    • 其实在about页面我想知道菜单的选项。我想为一些自定义行为处理这些数据。关于页面甚至需要有一个顶部菜单。我想知道管理员为标题配置了什么
    • 选项是什么意思?您可以使用此函数wp_get_nav_menu_items 将菜单项作为 php 数组获取,或者如果您希望将一些自定义 html 应用于您的菜单,您必须扩展并创建一个 WP_nav_walker。通常这些是应用在菜单上的功能。
    猜你喜欢
    • 2017-06-08
    • 1970-01-01
    • 2014-05-10
    • 1970-01-01
    • 1970-01-01
    • 2015-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多