Как вывести определенные записи в wordpress?

Здравствуйте, есть такой код который выводит дочерние страницы списком в конце контента и исключает страницу в которой находишься.
Иерархия вида:
Оценки
-Оценки1
-Оценки2
-Оценки3
--Оценки3.1
-Оценки4.

Проблема в том, если я исключаю текущую страницу и в ней есть дочерний элемент, то он не выводится.
Есть решение такой проблемы?
function devise_list_child_pages() {

global $post;

if ( is_page() && $post->post_parent )

	$childpages = wp_list_pages( 'depth=-1&sort_column=menu_order&title_li=&child_of=' . $post->post_parent . '&echo=0&exclude='. $post->ID );
else
	$childpages = wp_list_pages( 'depth=-1&sort_column=menu_order&title_li=&child_of=' . $post->ID . '&echo=0' );

if ( $childpages ) {

	$string = '<ul>' . $childpages . '</ul>';
}

return $string;

}

add_shortcode('devise_childpages', 'devise_list_child_pages');
  • Вопрос задан
  • 59 просмотров
Пригласить эксперта
Ответы на вопрос 1
Kozack
@Kozack Куратор тега WordPress
Thinking about a11y
Не исключайте текущую страницы, но выделяйте её как текущую, чтобы пользователь понимал что он сейчас здесь
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы