WordPress получить список всех пунктов меню заголовка - PullRequest
0 голосов
/ 29 апреля 2018

У меня есть сайт Wordpress. На одной из страниц я хочу показать список элементов, которые есть в шапке. Я действительно не хочу показывать сам заголовок.

Например, у меня есть эта настройка в теме WordPress для заголовка, перейдя к wp-admin->Appreance->Header->Menu-TopMenu

Home | About | Contact

Теперь в одном из шаблонов я хочу получить массив этих трех элементов как

{Home, About, Contact}

Какой метод Wordpress доступен для получения этого?

Глядя на header.php по умолчанию, я вижу этот код, но не совсем понимаю, как получить от него то, что мне нужно.

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

1 Ответ

0 голосов
/ 29 апреля 2018

Ваш вопрос не совсем понятен. Если вы хотите отобразить отдельное меню на определенной странице, у вас может быть два варианта. Например, если вы хотите отобразить другое меню на странице 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. Или вы также можете использовать идентификатор страницы и поместить содержимое заголовка, необходимое для этой страницы. Все остальные страницы будут загружать файл по умолчанию header.php.

Пожалуйста, обратитесь к этим функциям кодекса

  1. https://developer.wordpress.org/reference/functions/wp_nav_menu/
  2. https://developer.wordpress.org/reference/functions/is_page/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...