Seguro que más de una vez te has sentido tentado de usar códigos PHP en un widget de texto, pero esto está inhabilitado por defecto en WordPress, así que – sin modificar nada – solo puedes añadir en principio códigos HMTL o Scripts.
Pero, como todo en WordPress, esto es una opción por defecto, que puedes modificar a tu gusto, por lo que si lo necesitas puedes hacer que los widgets de texto de WordPress ejecuten cualquier código PHP.
Las opciones son las habituales …
Índice de contenidos
Ejecutar PHP en widgets de texto mediante plugins
Hay un montón de plugins para poder ejecutar PHP en widgets de texto, aquí tienes una lista con unos cuantos:
Cualquiera de los anteriores te ofrecerá esta funcionalidad, con alguna más añadida en el caso del último, pues permite ejecutar PHP en cualquier sitio, no solo en widgets, usando códigos cortos.
Ejecutar PHP en widgets de texto mediante código
Esta opción es realmente sencilla, pues solo tienes que añadir al archivo functions.php
de tu tema activo o a tu plugin de funciones el siguiente código:
//Ejecutar PHP en widgets de texto function ejecutar_php($html){ if(strpos($html,"<"."?php")!==false){ ob_start(); eval("?".">".$html); $html=ob_get_contents(); ob_end_clean(); } return $html; } add_filter('widget_text','ejecutar_php',100);
Guardas los cambios y ya puedes probar a ver si funciona añadiendo a un widget de texto algún código PHP de ejemplo como este:
<?php echo "¡Bienvenido a mi mundo" ?>
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
gracias fermando
Hola Fernando. Sabes si esto serviría tambien en el contenido de un post o pagina? Gracias
El código no, el último plugin si que lo permite mediante shortcodes
Ok, gracias.
Pregunta de ignorante que quiere salir de la ignorancia ¿si activo el PHP en Widgets se activaría también en comentarios por poner un ejemplo? porque mi temor por así decirlo es que cualquiera pudiese inyectar código PHP en la página, o por lo menos facilitar la tarea para hacer esto.
Con el código solo se activa en widgets de texto, con los plugins hay de todo
Perfecto Fernando, muchas gracias. Entonces si me puede ser bastante útil este método, si da pereza crear un Widget para cumplir determinada funcion o tengo que poner código PHP «de rápido» puede salvarme de un buen apuro este método.
Yo usuo Enhanced Text Widget permite php, javascript, css, flash y html
Hola Fernando, me gustaría saber si puedo incluir funciones en un widget con este truco, me gustaría insertar clases que tengo creadas para obtener datos.
Buenos días. Por qué con las actualizaciones automáticas de WP 3.8 ahora en el widget Texto no puedo escribir nada, sólo elegir su ubicación en la página? Cómo corregirlo? Gracias, un saludo
en mi opiniones muy bueno el código! como hacemos que sirva tambien para ejecutar php en cualquier punto de una página? o de un post? se puede hacer mediante un shortcode?
Con este plugin se puede hacer:
https://es.wordpress.org/plugins/ad-inserter/