Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

In wp-config.php you're able to change how WordPress deals with post revisions. Specifically you're able to turn them off or specify a max number of revisions.

I'd like to be able to set a max number or revisions on a post type basis.

Is this possible?

share|improve this question
add comment

2 Answers

up vote 1 down vote accepted
  1. Remove the action 'wp_save_post_revision' from 'pre_post_update'. It is set per default in wp-includes/default-filters.php with the default priority (10).

  2. Add your own function to this hook. You get the $post_ID as parameter, so detecting the post type is easy.

  3. In your callback copy the code from wp_save_post_revision() but use the constant WP_POST_REVISIONS for the post type post only, and use different values for other post types. Not sure if it is possible to pass extra values in register_post_type()

share|improve this answer
1  
This is the winner: gist.github.com/2884090 You do have to roll your own revision meta box, however. The built in one still uses WP_POST_REVISIONS. –  chrisguitarguy Jun 6 '12 at 19:24
add comment

This is possible but it's not as simple as changing the WP_POST_REVISIONS property in the wp-config.php. This is possible by adding a filter to the 'wp_insert_post_data'.

Adding a filter is done like this:

add_filter('wp_insert_post_data' , 'my_insert_post_data');

function my_insert_post_data($data , $postarr) {
  // Check the revision stuff
  return $data;
}
share|improve this answer
1  
Except wp_insert_post_data does not take care of deleting extra revisions, which is what I want to avoid. –  chrisguitarguy Jun 4 '12 at 22:09
    
Upvoted. @ChristopherDavis Completely understand what you're after. On the other hand, this could be extended to maybe handle it... –  kaiser Jun 4 '12 at 23:01
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.