Если опубликовано после даты

Мне нужно получить другую «get_template_part» на основе даты и категории. Я изменил затраты на категорию, что означает, что любой пост в этой категории до сегодняшнего дня не сможет использовать новый шаблон, но должен по-прежнему использовать старый.

if ( in_category( 'photographer-interviews' )) { get_template_part( 'content', 'interview' ); } else { get_template_part( 'content', 'blog' ); } 

Поэтому мне нужно также проверить, опубликован ли пост внутри «фотограф-интервью» после сегодняшнего дня. Если бы он продолжал использовать новый шаблон, если не продолжать использовать старый (блог).

Solutions Collecting From Web of "Если опубликовано после даты"

Существует множество способов сравнения дат. возможно, самое простое (непроверенное):

 if ( in_category( 'photographer-interviews' ) && strtotime( get_the_date( 'c' ) ) > 1376524800 ) { get_template_part( 'content', 'interview' ); } else { get_template_part( 'content', 'blog' ); } 

1376524800 – это отметка времени Unix для 00:00 (GMT) 15 августа, то есть полночь 14-го. Поэтому сообщения с датой публикации 15-го числа вернутся.

Если вы буквально хотите получать сообщения только после 15-го, вы будете использовать 1376611200.

Ниже приведены шаги по сравнению даты публикации с установленной датой.

Получить дату публикации

Это позволит получить дату в формате yyyy-mm-dd, как в 2013-07-31. В WordPress Codex больше информации о the_date () .

  $ post_date = the_date ('Ym-d', '', '', false); 

Укажите дату отсечения

Укажите дату для сравнения даты публикации. Используйте тот же формат даты, что и в шаге 1.

  $ cutoff_date = '2013-08-14'; 

Конвертировать даты

Преобразуйте даты в строку timestamp, используя функцию strtotime () PHP, чтобы их можно было сравнить. Добавьте это в код сверху.

 $ post_date = strtotime (the_date ('Ym-d', '', '', false));
 $ cutoff_date = strtotime ('2013-08-14');

Сравнить даты

  $ post_date> $ cutoff_date 

Все вместе сейчас

И вот полный код.

 $ post_date = strtotime (the_date ('Ym-d', '', '', false));
 $ cutoff_date = strtotime ('2013-08-14');
 if (in_category ('фотограф-интервью') && $ post_date> $ cutoff_date) {
     get_template_part («контент», «интервью»);
 } else {
     get_template_part ('content', 'blog');
 }