¿Agregar contenido al título del widget en el área de administración dentro del widget?

4

¿Es posible agregar contenido (ícono y texto) al título del widget en el área de administración y al personalizador basado en otro valor del widget?

Los widgets son personalizados y desarrollados por mí (no uno predeterminado de WP)

Idealmente, debería funcionar con bot en el área de administración & personalizador En el frontend se muestra contenido extra.

Luego,elusuariocambiaunaopciónenelwidgetyluegodeguardareltítulocambiaa

Logré lograr esto con JS y .on('widget-updated widget-added') event, pero buscando un enfoque más sólido ya que no funciona en el personalizador.

    
pregunta Runnick 02.12.2017 - 14:53

3 respuestas

1

Puedes agregar un filtro para widget_title hook.

O cambia el $instance['title'] en la actualización.

    
respondido por el Moshe Harush 11.12.2017 - 01:17
0

Según mi entendimiento, puedo sugerirle que probablemente pueda usar algo como font-awesome. Esto te ayudará a mostrar una especie de imagen usando una clase CSS simple.

Por lo tanto, puede revisar mi solución y hacerme saber sus opiniones al respecto.

    
respondido por el user132643 07.12.2017 - 11:56
0

Déjame describir cada situación.

  1. Sideseacambiar"Buscar" en la captura de pantalla anterior, debería decepcionarlo, puede buscar en /wp-admin/includes/widgets.php (línea 232) y en cualquier clase de widget (abrí / wp -incluye / widgets / class-wp-widget-search.php) y descubrirá que no hay enganches de filtro para ello. Solo se puede cambiar en tus widgets personalizados.

En mi widget personalizado, lo cambio en esta parte del código de clase del widget:

    function __construct() {
         parent::__construct(
            'misha_widget', 
            'Widget title', // here it is
            array( 'description' => 'Widget description' )
        );
    }
  1. Si desea cambiar "Mi búsqueda" en el widget en el área de administración, JavaScript es una buena manera de hacerlo porque WordPress también lo hace con JS. El enlace widget_title se aplicará solo para la apariencia del sitio web, no para el área de administración o el personalizador:

    add_filter('widget_title', 'misha_change_title1', 10, 3 );
    function misha_change_title1( $title, $instance, $id ){
        if( $id == 'search' ) {
            return '                                    
respondido por el Misha Rudrastyh 11.12.2017 - 11:40

Lea otras preguntas en las etiquetas