WordPress : Manipuler la liste des thèmes dans wp-admin

Publié par Jean-Michel le

J’utilise un réseau multisite avec plus de 100 thèmes installés et activés. Existe-t-il un moyen de manipuler la liste des thèmes disponibles dans wp-admin afin que certains thèmes apparaissent en premier dans la liste ? (une sorte de « En vedette » ou « recommandé ») Après les 9 premiers ou plus alphabétique par défaut, ce serait bien.

Évidemment, googler les mots « wordpress » et « thèmes » a été plutôt infructueux dans ce cas.

Solution n°1 trouvée

J’ai trouvé une mesure idiote mais efficace pour placer certains thèmes en tête de liste. Étant donné que les thèmes sont répertoriés par ordre alphabétique, il était possible de manipuler la sortie en modifiant le nom du thème, en particulier en ajoutant un symbole devant le nom du thème, il apparaîtra au début de la liste.

Je me suis contenté d’un espace insécable  car cela n’affectait pas visuellement le nom. Vous pouvez également essayer des caractères ascii invisibles. HTML est dépouillé alors ne vous embêtez pas à essayer cela.

/*
Theme Name:  Ribbon
Description: A customisable theme

Solution n°2 trouvée

Probablement pas sans modifier les fichiers de base. Je n’ai trouvé aucun crochet que vous pourriez utiliser.

Si vous regardez dans le fichier wp-admin/themes.phpet suivez le déroulement du programme jusqu’à ce que la liste des thèmes s’affiche, vous pouvez trouver la classe WP_Themes_List_Tabledans wp-admin/includes/class-wp-themes-list-table.php.

Cette classe génère la liste HTML. En suivant la prepare_items()méthode, WordPress récupère la liste des thèmes disponibles à partir de la fonction get_themes()qui n’a pas non plus de crochet.

Ce que vous pouvez faire est de limiter le résultat pour n’autoriser que certains thèmes avec le filtre allowed_themesappelé dans la fonction get_allowed_themes().

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *