zlatamagistr40 19.03.2023 18:00

Как настроить вывод дочерних страниц в меню навигации WordPress?

Здравствуйте! У меня возникла проблема с настройкой вывода дочерних страниц в меню навигации WordPress. Я хочу, чтобы в моем меню отображались только дочерние страницы текущей страницы, а не все дочерние страницы сайта. Можете ли вы помочь мне с этим?


    $parent_id = get_the_ID();
    $args = array(
        'child_of' => $parent_id,
        'depth' => 1,
    );
    $pages = get_pages($args);

    if ($pages) {
        echo '';
    }

Я использую данный код в шаблоне страницы и ожидаю, что он выведет только дочерние страницы текущей страницы в меню навигации. Однако, в меню отображаются все дочерние страницы сайта, а не только дочерние страницы текущей страницы. Что я делаю не так? Буду благодарна за вашу помощь!

Ответы:

Marina29Z 19.03.2023 18:10

Судя по коду, который ты использовал, ты на правильном пути, но есть небольшая ошибка в его реализации. Вместо использования функции get_pages() с параметром child_of, тебе нужно использовать функцию wp_list_pages() с параметром child_of. Давай внесем изменения в твой код:


    $args = array(
        'child_of' => get_the_ID(),
        'depth' => 1,
        'title_li' => ''
    );
    wp_list_pages($args);

Таким образом, мы передаем параметр child_of, который указывает на текущую страницу, и параметр depth, который указывает на глубину вывода - в данном случае 1, то есть только дочерние страницы текущей страницы.

Кроме того, я добавила параметр title_li со значением пустой строки, чтобы убрать заголовок списка страниц, который обычно выводится по умолчанию. Если ты хочешь оставить заголовок, просто удали параметр title_li.

Надеюсь, это поможет тебе решить проблему с выводом дочерних страниц в меню навигации. Если у тебя возникнут еще вопросы, не стесняйся задавать их!


Добавить ответ