diff --git a/config/hooks.php b/config/hooks.php index ad52be2..3058fca 100644 --- a/config/hooks.php +++ b/config/hooks.php @@ -5,6 +5,7 @@ return [ 'acf' => Yard\Brave\Hooks\ACF::class, 'authorization' => Yard\Brave\Hooks\Authorization::class, + 'duplicate-post' => Yard\Brave\Hooks\DuplicatePost::class, 'elasticsearch' => Yard\Brave\Hooks\Elasticsearch::class, 'facetwp' => Yard\Brave\Hooks\FacetWP::class, 'gravityforms' => Yard\Brave\Hooks\GravityForms::class, diff --git a/src/DuplicatePost.php b/src/DuplicatePost.php new file mode 100644 index 0000000..aea458b --- /dev/null +++ b/src/DuplicatePost.php @@ -0,0 +1,40 @@ +is_rewrite_and_republish_copy($post)) { + return; + } + + $revisionData = wp_get_latest_revision_id_and_total_count($post->ID); + + if (is_wp_error($revisionData) || 0 < $revisionData['count']) { + return; + } + + wp_save_post_revision($post->ID); + } +}