web-dev-qa-db-ja.com

投稿のリビジョンカウントを取得する方法はありますか?

投稿のリビジョンカウント番号を取得する方法はありますか?リビジョンを取得する方法を見たことがありますが、リビジョンを取得するだけでは足りません。

3
1.21 gigawatts

wp_get_post_revisions ( int|WP_Post $post_id, $args = null ) を使うことができます。渡された投稿IDのリビジョンの配列、または渡された投稿にリビジョンがない場合は空の配列を返します。

$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オブジェクトの一部ではありません。カスタムフィールドを更新しただけでは、ポストオブジェクトは変わらないためポストリビジョンは作成されません。また、カスタムフィールドには改訂システムがないため、古い値は新しい値で完全に上書きされます。

4
Pieter Goosen