L'écran de post-visualisation bascule de la vue de liste à la vue d'extraits en fonction de la valeur du paramètre "mode" dans la chaîne de requête. Si le paramètre "mode" n'est pas défini, WordPress utilise par défaut la vue liste.
Malheureusement, ce paramètre n'est pas filtrable, il n'y a donc pas de moyen facile de le contrôler par programme.
Je vais donc faire quelque chose que je ne fais jamais ... Je vais vous dire comment pirater Core pour que cela fonctionne ...
Ajout d'un filtre
Ouvrez /wp-admin/includes/class-wp-posts-list-table.php
et trouvez la prepare_items()
méthode (autour de la ligne 81).
Sur la ligne 99, WordPress vérifie si le paramètre "mode" a été défini ou non dans la demande et l'utilise pour définir la $mode
variable globale :
$mode = empty( $_REQUEST['mode'] ) ? 'list' : $_REQUEST['mode'];
Nous allons modifier cette ligne pour filtrer le paramètre par défaut. Changez cette ligne en:
$mode = empty( $_REQUEST['mode'] ) ? apply_filters( 'default-posts-list-mode', 'list' ) : $_REQUEST['mode'];
Maintenant, allez dans le functions.php
fichier de votre thème et ajoutez le code suivant:
add_filter( 'default-posts-list-mode', 'my_default_posts_list_mode' );
function my_default_posts_list_mode( $default ) {
return 'excerpt';
}
Cela se connectera au filtre et renverra le mode extrait par défaut.
Étant donné que ma règle personnelle sur le piratage de Core nécessite que tous les hacks soient redirigés vers le projet (de cette façon, ils peuvent être intégrés dans Core et ne plus être considérés comme un hack), j'ai ouvert un ticket Trac pour cette amélioration et soumis le code ci-dessus comme un patch. Veuillez peser sur le ticket afin qu'il puisse entrer dans le noyau pour la 3.5 (nous sommes trop tard dans le cycle pour la 3.4, mais nous pouvons essayer de le faire passer pour la prochaine version).