Intereting Posts
Пользовательский тип сообщения, постоянные ссылки, таксономии и сообщения в блоге Переводы WordPress «Параметры экрана» отсутствуют. Где я должен начать поиск неисправностей? показывать значения метаданных посетителям, которые собираются через форму согласия Как заставить HTTPS на WordPress и удалить HTTPS из постоянных ссылок Как использовать post_updated hook до и после аргументов Исключить категорию из цикла WordPress wp_editor – кнопка загрузчика мультимедиа для tinymce Пользовательские статусы типа сообщения Как включить внешний PHP-файл в поддиректор WordPress? ? login = не удалось подключиться только к URL при определенных обстоятельствах Пользователь Gravatar не работает Продвижение сайта: сделанные публичные вопросы безопасности Как запросить в течение недели с помощью key => value Обозначение аргумента WP_Query? Вывод из выпадающего списка таксономии уровня

Как создать иерархический список всех страниц и дочерних страниц с помощью обычного запроса?

Я пытаюсь запросить все страницы (только название), чтобы сгенерировать структуру ul / li-tree, используя обычный запрос:

// The Query $query = new WP_Query( $args ); // The Loop if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); ?> <li><?php the_title(); ?></li> <?php } } else { // no posts found } 

Можно ли определить уровень текущей страницы / сообщения и есть ли у нее родитель или нет? Я просто хочу, чтобы он выводил что-то вроде этого:

 <ul> <li>Parent 1<ul> <li>Child 1-1</li> <li>Child 1-2</li> </ul></li> <li>Parent 2</li> <li>Parent 3</li> </ul> 

Solutions Collecting From Web of "Как создать иерархический список всех страниц и дочерних страниц с помощью обычного запроса?"

wp_list_pages() этого вы можете использовать wp_list_pages() . Просто передайте свой тип сообщения, если вы пытаетесь перечислить что-то другое, кроме страниц страницы:

 <ul> <?php wp_list_pages(array( 'post_type' => 'yourposttype', 'title_li' => '' ) ); ?> </ul> 

Если вы хотите отобразить это на всех типах сообщений, вы можете использовать

 <ul> <?php wp_list_pages(array( 'post_type' => $post->post_type, 'title_li' => '' ) ); ?> </ul> 

который автоматически захватывает тип сообщения текущего просматриваемого элемента и отображает полное дерево для этого типа сообщения.