Есть ли способ получить количество пересмотров публикации?


Есть ли способ получить количество редакций для публикации? Я видел, как получить изменения, но я не хочу, чтобы изменения были просто подсчитаны.

 4
Author: 1.21 gigawatts, 2015-10-13

1 answers

Вы можете использовать wp_get_post_revisions ( int|WP_Post $post_id, $args = null ). Он возвращает массив ревизий для переданного идентификатора записи или пустой массив, если переданная запись не содержит никаких ревизий.

Обратите внимание, что параметр $args принимает все параметры, допустимые для WP_Query

$q = wp_get_post_revisions( 513 );
echo count( $q );
?><pre><?php var_dump($q); ?></pre><?php    

РЕДАКТИРОВАТЬ

Из ваших комментариев о пользовательских полях следует, что пользовательские поля не запускают систему редактирования записей.

Я не собираюсь обсуждать, как работает система редактирования, но, короче говоря, когда сообщение обновляется, старое и новые ценности WP_Post сравнивается. Для этого есть конкретные действия, post_updated. Если эти значения не совпадают, создается ревизия (, если ревизии включены).

Теперь пользовательские поля не являются частью объекта WP_Post, поэтому всякий раз, когда вы просто обновляете пользовательское поле, редакция post не будет создана, так как объект post остается прежним. Кроме того, пользовательские поля также не имеют системы редактирования, поэтому старые значения полностью перезаписываются новыми значения

 5
Author: Pieter Goosen, 2015-10-13 05:06:23