ユーザーの操作時に特定の投稿を除外することによってFALSEのwp_post_revisions構成をオーバーライドし、データベースストアのリビジョンのみを保存する方法があるかどうか疑問に思っていました。
これを実装するにはどうすればよいですか?
チェックはwp-includes/revision.phpのwp_revisions_to_keep($post)
で行われ、結果はフィルターを介して実行されるため、次のようなことができるはずです。
<?php
function wpse_289553($num, $post) {
if(in_array($post->ID, array(123, 456, 789))) {
return -1;
}
return $num;
}
add_filter("wp_revisions_to_keep", "wpse_289553", 10, 2);
その配列に投稿IDを設定し、保持するリビジョンの数に返される数を調整します。 -1は「すべて」を意味します。