Existe-t-il une fonction permettant de définir WP_POST_REVISIONS à partir d'un plugin au lieu de le faire dans config.php? Je pensais faire ceci:
runkit_constant_redefine( 'WP_POST_REVISIONS', 0 );
mais cela crée une dépendance vis-à-vis du runkit en cours de compilation avec PHP, ce que je ne sais pas si c'est habituel/typique.
Je veux désactiver complètement les révisions et j'aimerais que mon plug-in (à utilisation restreinte, à usage spécifique) soit aussi "clé en main" que possible; ne nécessitant pas d'autres réglages ou ajustements manuels.
<?php defined('WP_POST_REVISIONS') or define ('WP_POST_REVISIONS', false);
wp-content/mu-plugins
.Être averti; Il est recommandé que vous ayez au moins 3 révisions après pour éviter toute perte de données.
Vous pouvez essayer le filtre wp_revisions_to_keep
pour remplacer la valeur de la constante WP_POST_REVISIONS
:
/**
* Turn off revisions
*/
add_filter( 'wp_revisions_to_keep', function( $num, $post )
{
//---------------------------------
// Adjust the $num to your needs
//---------------------------------
if ( post_type_supports( $post->post_type, 'revisions' ) )
$num = 0;
return $num;
}, PHP_INT_MAX, 2 );
Si $num
est -1
, nous conservons toutes les révisions. Si $num
est 0
, nous ne les conservons pas.
Pour le désactiver, nous pourrions également essayer de supprimer le support des révisions avec remove_post_type_support () () :
/**
* Remove revisions support for posts
*/
add_action( 'init', function()
{
remove_post_type_support( $post_type = 'post', $supports = 'revisions' );
} );