Ejecutar PHP en widgets de texto

php en wordpress

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 … 

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" ?>
VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(6 votos, promedio: 4.7)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado.

13 comentarios en “Ejecutar PHP en widgets de texto”

  1. Xavier Ocampos

    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.

      1. Xavier Ocampos

        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.

  2. Pingback: Ajustes avanzados de búsqueda en WordPress | Ayuda WordPress

  3. Alejandro Esquiva

    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.

  4. enComunicación

    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

  5. reparacionmac.es

    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?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Ir arriba Ir al contenido