Intereting Posts
Добавить мета-окно для заголовка Featured Image в wp-admin / post-new.php Изображения в сетке Twenty Eleven theme get_posts – получить все сообщения по id автора Как запустить функцию на странице параметров плагина? Как создать список настроек для пользовательской страницы плагина без использования настраиваемого типа сообщений Пункт главного меню для нескольких плагинов? Добавление заголовка и описания к показанному изображению подстраницы деактивировать слайдер изображения на странице продукта Могут ли добавляться /% year% /% monthnum% /% day% / struct tags в постоянные константы пользовательских сообщений? Загружаются два сообщения вместо одного? Как делиться пользовательскими данными на нескольких веб-сайтах WordPress? Force Cron запускается только на одном сервере Получите изображение src и <a> href данные из сообщений Ошибка базы данных WordPress с последним WP – «WP_termmeta не существует» Удалить действия, добавленные плагином SEO ultimate Plugin

get_post_ancestors возвращает пустое

Я использую WordPress для организации документации для программного продукта, который я поддерживаю, и немного ударил. У меня есть несколько часто задаваемых вопросов (сохраненных как страницы), которые мне нужны для отдельных страниц, но я хочу, чтобы они могли объединить их в один общий список FAQ.

Для этого я установил плагин «Категории страниц и теги ниндзя», чтобы я мог пометить каждую отдельную страницу «faq». То, что я хотел сделать, было запросом для всех страниц с этим тегом, а затем сгруппировать их в 3 списка, в зависимости от функции часто задаваемых вопросов: общих, инструкторов или студентов. Каждый результат будет отсортирован на основе предка отдельной страницы.

Это код, который я разработал:

$instructors = array(); $student = array(); $general = array(); $postsByTag = get_posts('tag=faq&post_type=page&numberposts=0'); foreach($postsByTag as $post) { setup_postdata($post); $title = $post->post_title; $title = str_replace("FAQ: ", "", $title); $id = $post->ID; $ancestors = get_post_ancestors($post); if($post->ancestors && in_array( '386', $post->ancestors)) { $instructors[] = "<li><a href='". get_permalink()."'>$title</a></li>"; } else if(in_array( '384', $post->ancestors)) { $students[] ="<li><a href='". get_permalink()."'>$title</a></li>"; } else { $general[] = "<li><a href='". get_permalink()."'>$title</a></li>"; } } 

Код возвращает все страницы с меткой «faq», но он сортирует все в категорию «общий», потому что кажется, что get_post_ancestors возвращает пустое, хотя я знаю, что это не так.

Что я здесь делаю неправильно? Кто-нибудь может мне помочь? Благодаря!