Intereting Posts
Как экспортировать продукты WooCommerce с брендами? WordPress PHP plugin – Ошибка страницы настроек Использовать разные форматы сообщений для разных типов сообщений Динамически отображать значки шрифтов в виджетах Навигация, который работает выше и ниже заголовка Массовое удаление сообщения meta Отображать миниатюры для сообщений определенной категории Обратите внимание, что при создании числовой разбивки на пользовательский запрос Автоматическое создание пользовательского заголовка сообщения на основе мета Есть ли подобный фильтр media_upload_tabs для добавления вкладок в простой / избранный подборщик изображений? Bio появляется, когда посетитель нажимает на картинку Общее количество сообщений Не удается войти в WordPress после изменения домена Как разместить изображение после N-го числа сообщений в query_posts Загрузка нескольких изображений с помощью параметров темы

Исключить пользовательский тип сообщения из конфликта поиска с помощью get_posts

Я хочу скрыть свой пользовательский тип сообщения от результатов поиска. Итак, я выполнил код и использовал:

exclude_from_search => 'true' при регистрации моего настраиваемого типа сообщений.

Это скрывает пользовательский тип сообщения, и он больше не отображается в результатах поиска.

Но теперь я не могу загружать сообщения, используя get_posts но они выглядят отлично с WP_Query . Интересно, почему это происходит.

Solutions Collecting From Web of "Исключить пользовательский тип сообщения из конфликта поиска с помощью get_posts"

get_posts() использует WP_Query , поэтому вы, вероятно, предоставляете неправильные аргументы, стоит упомянуть, что функция имеет некоторые аргументы по умолчанию .

Это должно получить все сообщения CPT myCPT :

 $args = array( 'posts_per_page' => -1, 'post_type' => 'myCPT', 'post_status' => 'any', ); $posts_array = get_posts( $args ); ?> 

Можете ли вы попробовать этот код?

 function excludePages($query) { if ($query->is_search) { $query->set('post_type', 'post'); } return $query; } add_filter('pre_get_posts','excludePages');