Как автоматически обновлять дату публикации WordPress при добавлении нового контента с помощью короткого кода (динамичесPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как автоматически обновлять дату публикации WordPress при добавлении нового контента с помощью короткого кода (динамичес

Сообщение Anonymous »

Я использую шорткод плагина WordPress, чтобы добавить весь список последних статей определенной категории в одно сообщение, и я пытаюсь изменить дату и время публикации WP Post при добавлении нового контента через шорткод, как показано в этом картинка.
[img]https: //i.stack.imgur.com/aSw9C.png[/img]

Я создал этот пост 2 дня назад, но контент в этом посте добавляется с помощью короткого кода примерно каждые 10 минут, 20 минут ... Теперь я хочу обновить дату и время этого сообщения в зависимости от того, когда последний контент (статья публикации добавлена ​​с помощью короткого кода) в этом случае, например, 10 минут назад.
У меня есть несколько сообщений этого типа. , где я собираюсь добавить контент разных категорий и все сообщения с помощью разных коротких кодов, я хочу обновить дату и время всех этих сообщений в соответствии с их содержимым DOM, динамически меняющимся или обновляемым с помощью короткого кода. поэтому мне нужен универсальный код или способ добиться этого на всем моем веб-сайте WordPress.
Однако, чтобы получить это для одного сообщения, я попытался с помощью этого php-кода добавить функцию моей темы .php, но всё равно не работает.

Код: Выделить всё

    function update_post_date_from_shortcode($post_id) {
if (wp_is_post_autosave($post_id) || wp_is_post_revision($post_id)) {
return;
}

// Check if the post contains the specific shortcode
$post_content = get_post_field('post_content', $post_id);
if (strpos($post_content, '**[my_shortcode]**') !== false) {
// Update the post date to the current time
wp_update_post(array(
'ID' => $post_id,
'post_date' => current_time('mysql', true),
'post_date_gmt' => current_time('mysql', true),
));
}
}
Изменить: я тоже пробовал это, но все равно не сработало:

Код: Выделить всё

function update_post_date_on_shortcode($atts) {
global $post;
$post->post_date = date('Y-m-d H:i:s');
$post->post_date_gmt = get_gmt_from_date($post->post_date);
wp_update_post($post);
}
add_shortcode("[my_shortcode]", 'update_post_date_on_shortcode');
Кто-нибудь из экспертов знает, как мне этого добиться? и какие изменения мне нужно внести в этот код?

Подробнее здесь: https://stackoverflow.com/questions/783 ... -by-shortc
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»