Est-il possible d'ajouter du contenu (icône et texte) au titre du widget dans la zone d'administration et au personnalisateur en fonction d'une autre valeur du widget?
Les widgets sont personnalisés et développés par moi (pas WP par défaut)
Idéalement, cela devrait fonctionner dans la zone d'administration et le programme de personnalisation. Le contenu supplémentaire en façade est maintenant affiché.
Ensuite, l’utilisateur modifie une option dans le widget et, lors de l’enregistrement du titre, passe à
J'ai réussi à atteindre cet objectif avec JS et l'événement .on('widget-updated widget-added')
, mais je recherchais une approche plus robuste car elle ne fonctionne pas dans le personnaliseur.
Vous pouvez ajouter un filtre pour widget_title
hook.
Ou changez le $instance['title']
à la mise à jour.
Selon ma compréhension, je peux vous suggérer d’utiliser probablement quelque chose comme Font-Awesome. Cela vous aidera à afficher une sorte d'image en utilisant une simple classe CSS.
Vous pouvez donc vérifier ma solution et me faire savoir votre point de vue à ce sujet.
Permettez-moi de décrire chaque situation.
Sur mon widget personnalisé, je le change dans cette partie du code de classe du widget:
function __construct() {
parent::__construct(
'misha_widget',
'Widget title', // here it is
array( 'description' => 'Widget description' )
);
}
Si vous souhaitez modifier "Ma recherche" sur un widget dans la zone d'administration, JavaScript est un moyen suffisant pour le faire, car WordPress le fait également avec JS. Le hook widget_title sera appliqué uniquement pour l'apparence du site Web, pas pour la zone d'administration ou le personnalisateur:
add_filter('widget_title', 'misha_change_title1', 10, 3 );
function misha_change_title1( $title, $instance, $id ){
if( $id == 'search' ) {
return '????'. $title;
}
return $title;
}
Que diriez-vous de customizer, vous pouvez trouver les instructions pour exécuter du code JS personnalisé ici https://codex.wordpress.org/Theme_Customization_API#Step_2:_Create_a_JavaScriptFile