Intereting Posts
Текстовый URL-адрес WordPress Post в заголовке Хорошие инструменты для поиска крючков на странице wordpress / admin / blog post? CSS, добавленный через customizer, пренебрегает необходимостью детской темы? Отображать пароль Защищенный внешний RSS в шаблоне WordPress Отключите «запомнить меня» для wp-admin Импортер WordPress пытается сохранить файлы мультимедиа в неправильной папке сайта У меня возникла проблема с навигационным меню моего веб-сайта Имя родителя темы родителя Статьи являются текстовыми только в любой категории, а не в HTML wp_mail игнорирует имя в поле From Заставлять пользователей регистрироваться для просмотра веб-сайта Как проверить, загружена ли таблица стилей? Отключить новое уведомление пользователя для электронной почты администратора Как ограничить функциональность в одной версии плагина? функция query_posts отключает класс current_page_menu

Помощь в определении будущего обходного пути

Я размещаю это в надежде немного узнать об фильтрах и $ wp_query.

Я исследовал, как

  • показать одно сообщение
  • с опубликованной датой в будущем
  • когда не вошли в систему

и выяснили, что вы можете сделать это, используя эту функцию, которую я нашел здесь :

add_filter('the_posts', 'show_all_future_posts'); function show_all_future_posts($posts){ global $wp_query, $wpdb; if(is_single() && $wp_query->post_count == 0) { $posts = $wpdb->get_results($wp_query->request); } return $posts; } 

Мой вопрос:

Почему $ wp_query-> post_count == 0 должен быть частью условного? Мне кажется, что на одной странице $ wp_query вернет число сообщений в 1.

Является $ wp_query-> post_count 0, когда запрос возвращает сообщение с будущим опубликованным статусом?

Это явно не чрезвычайная ситуация, но если кто-нибудь сможет объяснить, почему этот фильтр заканчивается показом сообщений с будущим статусом публикации, я был бы благодарен!

Solutions Collecting From Web of "Помощь в определении будущего обходного пути"

Я думаю, что ответ:

когда вы находитесь в режиме просмотра одной страницы / сообщения / cpt (вы проверяете его с помощью is_single() ), вы всегда должны иметь $wp_query->post_count равным 1, но если это будущий пост / страница / cpt, это приведет к 0 (потому что есть функция / действия, применяемые для проверки, будет ли она в будущем)

и $posts = $wpdb->get_results($wp_query->request); что вы говорите не применять эти функции / действия, которые проверяют будущие должности / страницы / cpt