Par défaut, la page "tous les messages" contient les filtres suivants
Existe-t-il un moyen d'ajouter "par balises"?
Filtre utilisateur 'restrict_manage_posts'
pour ajouter un autre filtre. Utilisez le code suivant dans functions.php
function kc_add_taxonomy_filters() {
global $typenow;
// an array of all the taxonomyies you want to display. Use the taxonomy name or slug
$my_taxonomies = array( 'post_tag' );
switch($typenow){
case 'post':
foreach ($my_taxonomies as $tax_slug) {
$tax_obj = get_taxonomy($tax_slug);
$tax_name = $tax_obj->labels->name;
$terms = get_terms($tax_slug);
if(count($terms) > 0) {
echo "<select name='$tax_slug' id='$tax_slug' class='postform alignleft actions'>";
echo "<option value=''>Show All $tax_name</option>";
foreach ($terms as $term) {
echo '<option value="', $term->slug,'" ',selected( @$_GET[$tax_slug] == $term->slug , $current = true, $echo = false ) , '>' , $term->name ,' (' , $term->count ,')</option>';
}
echo "</select>";
}
}
break;
}
}
add_action( 'restrict_manage_posts', 'kc_add_taxonomy_filters' );
Sans aucune aide de la part de cette communauté et des règles de réputation ridicules, j'ai trouvé un moyen de modifier le code ci-dessus afin qu'il fonctionne correctement.
Le code suivant doit aller dans wp-includes/functions.php . Notez que j'ai codé en dur le nom choisi pour être tag, ce qui semble être le fonctionnement actuel de la chaîne de requête de filtrage WP.
function kc_add_taxonomy_filters() {
global $typenow;
// an array of all the taxonomyies you want to display. Use the taxonomy name or slug
$my_taxonomies = array( 'post_tag' );
switch($typenow){
case 'post':
foreach ($my_taxonomies as $tax_slug) {
$tax_obj = get_taxonomy($tax_slug);
$tax_name = $tax_obj->labels->name;
$terms = get_terms($tax_slug);
if(count($terms) > 0) {
echo "<select name='tag' id='$tax_slug' class='postform alignleft actions'>";
echo "<option value=''>Show All $tax_name</option>";
foreach ($terms as $term) {
echo '<option value="', $term->slug,'" ',selected( @$_GET[$tax_slug] == $term->slug , $current = true, $echo = false ) , '>' , $term->name ,' (' , $term->count ,')</option>';
}
echo "</select>";
}
}
break;
}
}
Ensuite, l'action doit être insérée dans votre fichier functions.php de thème (wp-content/themes/YOURTHEME/functions.php
add_action( 'restrict_manage_posts', 'kc_add_taxonomy_filters' );