изменение основного цикла wordpress

269
13 февраля 2017, 17:07

Нужно чтобы на странице категорий выводились посты только с определенным тегом, при этом посты самой категории не должны учитываться. Т.е. нужно изменить содержимое основного запроса. Если делать запрос через new wp_query то ломается пагинация. На данный момент есть вот такой код в файле functions.php:

function pre_get_post_by_tag( $query )
{
  if ( is_category() && $query->is_main_query() ) {
      $query->set('tag', 'boys');
  }
}
add_action('get_post_by_tag', 'pre_get_post_by_tag' );

boys - название тега.

и вызов в файле archive.php

do_action('get_post_by_tag');

сейчас выдает ошибку "Fatal error: Call to a member function is_main_query() on string in...."

Как исправить ошибку? Правильно ли изменять запрос таким образом? Может есть какието другие способы добиться желаемого? Буду рад любой помощи.

Answer 1

add_action('get_post_by_tag', 'pre_get_post_by_tag' );

Похоже надо

add_action('pre_get_posts', 'pre_get_post_by_tag' );

См дополнительно

READ ALSO
Запрос INSERT INTO не добавляет данные в MySQL

Запрос INSERT INTO не добавляет данные в MySQL

Из БД данные достает нормально, а добавлять не хочет, при нажатии на кнопку "Добавить" ничего не отправляет и возвращает на эту же страницуПодскажите...

322
Как пристыковать две переменные но так чтобы при распечатывании они были одна под другой?

Как пристыковать две переменные но так чтобы при распечатывании они были одна под другой?

Есть две переменные содержащие строку$title содержит заголовок; $text содержит текст

301
Установка CleverStack

Установка CleverStack

Подскажите пожалуйста как это установить https://githubcom/CleverStack/cleverstack-cli Как не пытался, сыпет ошибками

260
Как это работает и что за технология?

Как это работает и что за технология?

Как получить доступ к этой переменной var AppComponent из консоли? И что это за export методы? Я пытался искать в объекте window, но там его нет

284