Comment changer d'option récemment_édité?

4

L’option WP recent_edited peut s’avérer très utile: elle répertorie les 5 derniers fichiers auxquels vous avez apporté des modifications. Le seul problème, c’est tout, c’est tout, 5 fichiers.

Et si de nombreuses modifications ont été apportées aux fichiers de thème Wordpress à l'aide de l'éditeur d'administrateur WP par défaut?

Il serait utile d’avoir une liste de, disons les 20 derniers fichiers édités et la date à laquelle cela s’est passé.

Quelqu'un sait-il où se trouve la fonction stockée ou un autre mécanisme n'autorisant que 5 éléments à résider dans un tableau de l'option WP récemment édité?

J'ai essayé avec wp-admin / includes / schema.php et wp-includes / option.php où il devrait, comme je l'ai dit, être - aucun résultat.

    
posée Miloš Đakonović 12.09.2012 - 09:07

2 réponses

1

La fonction est update_recently_edited dans wp-admin/includes/misc.php . malheureusement, il est fixé à 5:

function update_recently_edited( $file ) {
    $oldfiles = (array) get_option( 'recently_edited' );
    if ( $oldfiles ) {
        $oldfiles = array_reverse( $oldfiles );
        $oldfiles[] = $file;
        $oldfiles = array_reverse( $oldfiles );
        $oldfiles = array_unique( $oldfiles );
        if ( 5 < count( $oldfiles ))
            array_pop( $oldfiles );
    } else {
        $oldfiles[] = $file;
    }
    update_option( 'recently_edited', $oldfiles );
}
    
réponse donnée Milo 12.09.2012 - 09:23
5

Le processus de sauvegarde en option offre de manière pratique un filtre pour la nouvelle valeur, ainsi que l'accès à l'ancienne valeur. Il suffit de combiner les deux et de le donner à WP comme valeur à enregistrer:

add_filter( 'pre_update_option_recently_edited', 'increase_recently_edited_list', 10, 2 );

function increase_recently_edited_list( $newvalue, $oldvalue ) {

    return array_slice( array_unique( array_merge( $newvalue, $oldvalue ) ), 0, 20 );
}

PS curieusement, je ne peux pas savoir où cette liste est réellement utilisée? .. ou est-elle seulement là pour ceux qui veulent quelque chose à voir avec elle dans les extensions?

    
réponse donnée Rarst 22.12.2012 - 19:09

Lire d'autres questions sur les étiquettes