У меня есть функция, которая возвращает идентификаторы сообщений массива os.
На данный момент, каждый раз, когда у меня есть запрос, я должен сделать это:
$ids = повестка дня();
query_posts(массив(‘post__not_in’ => $ids);
Есть ли способ поддерживать массив, вызывая его в header.php и используя этот массив каждый раз, когда вы выполняете query_posts?
Я думаю, что на моем пути это перегрузка запросов.
Спасибо m8s Извините за мой плохой английский
Мне не нравится использовать для этого категории, поскольку они должны быть семантическими терминами. Однако мне нравится идея глобального массива. Вместо того, чтобы создавать новый запрос напрямую, я буду фильтровать его через функцию, которая добавит результаты в глобальный массив и вернет результаты:
Я добавляю это в functions.php:
Затем я вызываю функцию всякий раз, когда мне нужен запрос:
Это работает как шарм. Большое спасибо м8 :))))
Пожалуйста, выделите это в отдельный вопрос…
На самом деле я бы рекомендовал другой подход:
Создайте специальную категорию для этого набора сообщений (например: «Не в цикле»). Затем, когда вы звоните
query_posts()
, вы можете исключить публикации на основе этой категории.Однако, если вы хотите придерживаться своей исходной функциональности… добавьте функцию,
wp_head
которая устанавливает ваш массив идентификаторов, а затем ссылайтесь на нее как на глобальную переменную всякий раз, когда вы вызываетеquery_posts()
:Затем используйте:
я делаю что-то не так
вот код:
функция повестки дня() {
}
add_action(‘wp_head’, ‘повестки дня’);
тогда:
глобальные идентификаторы $;
массив $ids ничего не содержал:/