WordPress как на ладони
Наставник Трепачёв Д.П., phphtml.net wordpress jino

Как получить дату последнего отложеного до публикации поста?

Подскажите пожалуйста, какова должна быть логика этого задания и как его можно реализовать?

Задание:
Создать плагин, который за N минут до времени публикации отложенного поста (N задается из админки) администратору на email отсылает текстовое сообщение, предзаполняемое тоже из админки.

Так вот,

  1. мне нужно получить дату последнего отложеного поста;
  2. от даты отнять N, которое я должын задать с админки;
  3. вписать текстовое сообщение в уже заготовленом в админке поле
  4. отослать на почту админа.

Я прошу помочь мне попункто описывая, что можно использовать в таких случаях если у вас есть время и желание.

Спасибо.

0
Гость 7 месяцев назад
  • 1
    shevan215 cайт: wp-best.ru

    Получаешь последнюю запланированную запись, или с помощью get_posts()

    $the_query = new WP_Query(array(
    		'post_status' => 'future',
    		'posts_per_page' => 1,
    		'orderby' => 'date',
    		'order' => 'ASC'
    	));
    

    Далее get_the_time(), сравниваешь/отнимаешь/преобразуешь, формируешь сообщение и wp_mail()

    Более подробно не могу расписать, потому что сам не кодер.

    Так навскидку, наверное в настройках плагина можно указать периодичность проверки. Берется текущая дата, от неё формируется запрос на ближайший запланированный пост.

    Или же, например, на каждый запланированный пост автоматически создается уведомление, которое отправляется (дата публикации - N) через cron

    Самому интересно узнать, что скажут другие эксперты smile

    yc_gm 7 месяцев назад

    А как далее сравнить даты?
    Я сравниваю вот так:

    $time = get_post_time("U", true, $post->ID);
    $current = current_time('timestamp');
    $time = human_time_diff($time, $current);

    получаю NULL.
    Далее, как отнять и что иммено нужно отнять?
    Во что нужно преобразовать?

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Регистрация. Вход.