get_template_directory_uri() no funciona en el widget de texto del sidebar

8 ago 2012, 03:16:32
Vistas: 37.5K
Votos: 2

¡Espero que alguien pueda responder esto!

Estoy usando esto en mi cabecera y está funcionando:

<img src="<?php echo get_template_directory_uri(); ?>/images/image.jpg">  

Pero cuando intento usarlo en un widget de texto del sidebar no muestra la imagen. ¿Alguna idea?

0
Todas las respuestas a la pregunta 3
1

El código PHP no se ejecuta dentro de un widget de texto. Existen plugins que permiten hacer esto, pero se desaconseja fuertemente este tipo de práctica.

Añade este código a tu archivo functions.php, o mejor aún, conviértelo en un pequeño y sencillo plugin:

// Habilita el uso de shortcodes dentro de widgets.
add_filter( 'widget_text', 'do_shortcode' ); 

// Asigna la etiqueta para nuestro shortcode e identifica la función que se ejecutará.
add_shortcode( 'template_directory_uri', 'wpse61170_template_directory_uri' );

// Define la función
function wpse61170_template_directory_uri() {
    return get_template_directory_uri();
}

Para usarlo en el administrador, añade el shortcode [template_directory_uri] a tu widget de texto, y se mostrará el directorio de la plantilla, por ejemplo:

[template_directory_uri]/images/imagen.jpg
8 ago 2012 05:00:05
Comentarios

¡No hay problema y bienvenido/a a WPSE! ¿Podrías hacer clic en la marca de verificación para aceptar esta respuesta? ¡Gracias y saludos!

Dave Romsey Dave Romsey
9 ago 2012 02:30:32
0

Puedes utilizar un widget PHP, que es un widget de texto plano adaptado para poder ejecutar PHP. Consulta WordPress › PHP Code Widget « WordPress Plugins por http://ottodestruct.com

8 ago 2012 07:11:07
0

Una solución sencilla sería subir la imagen a la biblioteca multimedia y usar la url como src para la imagen en el widget de texto.

8 ago 2012 08:42:14