У меня есть сайт WordPress, основанный на теме 320 WP-Bootstrap, с настраиваемым типом сообщения типа. Я использую pre_get_posts(), чтобы включить пользовательский тип сообщения в основной цикл, который работает отлично.pre_get_posts() останавливает работу страниц в WordPress
При использовании нижеуказанной функции ссылки на страницы перестают работать, перенаправляются на страницу 404.
add_action('pre_get_posts', 'add_my_post_types_to_query');
function add_my_post_types_to_query($query) {
if ((!is_admin()) && $query->is_main_query())
$query->set('post_type', array('post', 'video'));
return $query;
}
Я выделил все изменения, внесенные в файл функций. Без этого запроса ссылки на страницы работают нормально.
Любая помощь очень ценится.
Это решает проблему у меня был, но удален CPT с домашней страницы. Тестирование для is_home() в дополнение к is_archive() разрешено. Спасибо за вашу помощь. – tonyedwardspz
Кстати, «return $ query» бесполезен, так как это действие, а не фильтр, поэтому вы можете просто удалить его или заменить его простым «возвратом». Изменения объекта запроса применяются по ссылке на исходный объект. – lud1977