Insertar Código PHP en widget texto sin Plugins modificando functions.php

1 Reply

Programación Wordpress
Insertar Código PHP en widget texto sin Plugins modificando functions.php

Si queremos añadir Código PHP en widget texto sin Plugins, tenemos una solución; una pequeña modificación en nuestro archivo functions.php

Por suerte en WordPress tenemos infinidad de Plugin, pero como he mencionado en otras entradas, si podemos evitar tener una infinidad instalados mejor; tanto por tema de desactualización de los mismos o porque para realizar una tarea sencilla, instalamos algunos que hacen infinidad de funciones que igual no necesitamos.

A continuación propongo una solución para insertar código dentro de los Widgets, y conseguir así programar sobre los campos que disponen.

Esta publicación se compone de dos, esta primera, en la que explico el código que tenemos que introducir dentro del archivo functions.php y otra entrada en la que propongo un ejemplo para obtener la IP pública dentro de un Widget de texto y ponerla a disposición de nuestros lectores.

Al grano, la ubicación del archivo es:

.../.../wp-content/themes/nuestro_tema/functions.php

Como ya hemos comentado otras veces los puntos se refieren a nuestra ruta del dominio y nuestro_tema sería la carpeta del tema activo.

Y el código que vamos a introducir dentro del archivo functions.php es el que sigue:

//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);
//FIN Ejecutar PHP en widgets de texto

Recomiendo que antes de insertar el código dentro del archivo, se realice una copia de seguridad del archivo functions.php, ya que si cometemos el más mínimo error, perderemos el acceso total a nuestro portal, y nos veremos obligados a restablecer el archivo desde un administrador de archivos externo, bien por FTP o por la consola de administración del dominio.

Para no correr riesgos voy a poner un fragmento del archivo functions.php con el código insertado y que así no dudéis donde ubicarlo.

<?php

//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);
?>
<?php
/**
 *
 * HamronUX functions and definitions.
 *
 * The functions file is used to initialize everything in the theme.
 * It sets up the supported features, default actions  and filters.
 *
 *
 * 
 * @since      HamronUX 1.0
 */

Como se puede observar, he insertado el código justo debajo de:

<?php

Y así minimizar el riesgo de introducir en texto en una zona errónea.

Un saludo y hasta la próxima.

1 comment

  1. Pingback: Mostrar la IP Pública dentro del widget de texto

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies