Как я могу подключить функцию в WordPress, из файла function.php, таким образом, чтобы она работала только для одной страницы?
if( is_page( '285' ) ):
function searchfilter($query) {
if( $query->is_search && !is_admin() ) {
$query->set('post_type', array('projects'));
}
return $query;
}
add_filter('pre_get_posts','searchfilter');
endif;
У меня есть такой код, но он не работает. Kто подскажет, в чём проблема?
Условные теги не работают прямо в functions.php
. На момент подключения этого файла в ядре ещё не установлен главный запрос WordPress, поэтому is_page()
с любыми аргументами и без них возвращает false.
Условный тег должен быть использован внутри хука:
function searchfilter( $query ) {
if ( $query->is_search && ! is_admin() ) {
if ( is_page( '285' ) ) {
$query->set( 'post_type', array( 'projects' ) );
}
}
return $query;
}
add_filter( 'pre_get_posts', 'searchfilter' );
Но и такой код неправильный. is_search()
и is_page()
никогда не вернут true
одновременно. Из вопроса непонятно, что именно вы хотите сделать.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Недавно задался вопросом, можно ли взять к примеру текст из дивов на странице, которая частично подгружается из php? Сначала я написал небольшой...
я столкнулся с ситуацией, когда мне нужно узнать текст ссылки по которой перешли на мой сайтУ меня система такая, что при переходе на страницу...