is_month()
Проверяет отображается ли страница архива «посты за месяц» example.com/2009/08. Условный тег.
Функция входит в проверку функций is_date() и is_archive(), поэтому, в одной логической цепочке, эту функцию нужно использовать перед указанными функциями, иначе она просто никогда не сработает. См. пример 2.
Работает на основе: WP_Query::is_month()
1 раз — 0.00007 сек (очень быстро) | 50000 раз — 0.02 сек (скорость света)
Хуков нет.
Возвращает
true|false.
Использование
if( is_month() ){
// код для архива за месяц
}
Примеры
#1 Использование в связке с is_archive()
Как правильно использовать этот тег в связке с is_archive(): его нельзя использовать после is_archive() в одной логической цепочке:
if( is_month() ) echo "Это страница архива за месяц!"; elseif( is_archive() ) echo "Это страница архива, но не архива по месяцам.";
Если в этом примере is_month() использовать после is_archive(), то тег никогда не сработает, потому что is_archive() включает в себя эту проверку.
#2 Выведем в сайдбаре пометку что сейчас открыта страница архива по месяцам:
if( is_month() ){
$title = "Это страница архива за месяц!";
}
Заметки
- Global. WP_Query.
$wp_queryWordPress Query object.
Список изменений
| С версии 1.5.0 | Введена. |
Код is_month() is month WP 6.9.1
function is_month() {
global $wp_query;
if ( ! isset( $wp_query ) ) {
_doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' );
return false;
}
return $wp_query->is_month();
}