Añadir funciones personalizadas en WordPress sin usar un tema hijo

16 de febrero - 2021

Aunque se recomienda utilizar un tema hijo cuando queremos realizar algún cambio sustancial en nuestra web, no siempre es el mejor método para conseguirlo. Si sólo queremos añadir funciones personalizadas en WordPress, es posible que te interese crear un plugin propio donde añadir los cambios que necesites en tu web.

Crear un tema hijo (child theme) o añadir un plugin de funciones

Seguro que ahora te preguntas si realmente es necesario tener un tema hijo o child theme cuando podemos utilizar un plugin para añadir funciones personalizadas en WordPress.

Y haces bien en dudar, porque cada uno tiene su razón de ser.

Lo que tienen en común los dos, y lo que verdaderamente los hacen importantes cuando añadimos cambios personalizados, es poder mantener todas las modificaciones que hagamos cuando el desarrollador lanza una nueva versión.

Al realizar las actualizaciones, todos los archivos son sustituidos por los de la nueva versión, y elimina cualquier tipo de modificación que hayamos podido hacer.

Nuca debemos realizar cambios directamente sobre los archivos originales de un tema, de un plugin o de WordPress.

El famoso archivo "functions.php" de WordPress

Parece un archivo importante, pero en realidad el archivo "functions.php" no es necesario para crear un tema de WordPress, aunque prácticamente todos los desarrolladores lo utilizan.

Que no sea necesario no quiere decir que podamos eliminarlo. Si existe es porque contiene funciones importantes para el funcionamiento de nuestra web.

Es el primer archivo que lee WordPress, y por eso se utiliza para colocar las funciones más importantes que los temas necesitan para su correcto funcionamiento.

Nosotros podemos aprovechar esta información para crear o añadir funciones personalizadas en WordPress y mejorar nuestro sitio.

Pero siempre siguiendo las recomendaciones que sugiere la comunidad de WordPress para no tener problemas.

Utilizar un tema hijo para añadir funciones personalizadas en WordPress

Un tema hijo, llamado también en inglés child theme, es la opción recomendada por WordPress para realizar cambios, visuales o de comportamiento, del tema que estamos usando.

Es una capa adicional al tema padre (un tema hijo nunca sustituye al tema padre) para que los cambios que realicemos no los perdamos cuando venga una nueva versión o actualización del tema principal.

Añadir funciones sobre un tema hijo de WordPress
Añadir funciones sobre un tema hijo de WordPress

En el tema hijo sólo debemos añadir cambios que afecten directamente al tema que estamos usando. Por ejemplo cambiar los créditos del pie de página que son exclusivos del tema, en el que hay que modificar el archivo del footer.

Igual pasa con el archivo "functions.php" que encontramos dentro del tema hijo, donde añadiremos funciones que afecten exclusivamente al tema.

De esta forma, cuando quieras cambiar de tema, que es muy posible que lo hagas pasado un tiempo, todos los cambios que has añadido al tema hijo no te importará perderlos porque no serán funcionales en el nuevo tema que elijas.

Crear un plugin para añadir funciones personalizadas en WordPress

Lo anterior es todo muy bonito, pero si hemos hecho cambios que afectan a otros aspectos que no son el tema que estamos utilizando, como pueden ser plugins o el propio WordPress, perderlos puede ser un gran problema.

Para que esto no pase, utilizaremos un plugin que vamos a crear nosotros mismos, donde colocaremos todo ese código que queremos que siga funcionando, aunque el tema sea diferente.

Crear un plugin personalizado para añadir funciones
Crear un plugin personalizado para añadir funciones

Suena bien ¿verdad?, pero además lo vamos a poder activar y desactivar cuando queramos desde la administración de WordPress, y también instalarlo en cualquier otro sitio que necesite de esas funcionalidades.

Una ventaja importante frente al tema hijo es que, si nos da problemas, podemos desactivarlo, renombrarlo o moverlo de carpeta y la web seguirá funcionando mientras analizamos y buscamos el origen del problema en nuestro plugin.

Un ejemplo de código que se debe colocar en este tipo de plugin lo podéis ver en cómo mostrar juntas las páginas de "Carrito" y "Finalizar compra" de Woocommerce.

Al añadir la función personalizada en el nuevo plugin, que afecta al comportamiento de Woocommerce, los cambios seguirán mostrándose sin problema, aunque cambiemos de tema.

Crear plugin para liberar al archivo "functions.php" del tema

Visto a grandes rasgos cómo hay que utilizar cada opción, vamos a empezar a crear nuestro complemento para añadir funciones personalizadas en WordPress.

Vas a ver que fácil es, sólo necesitas crear un archivo de texto plano donde colocar el siguiente código (qué tendrás que personalizar):

No necesitas ningún programa especial, con el "TextEdit" de Mac o el "WordPad" de Windows es suficiente. Hay que evitar los procesadores de texto que añaden basura al código y que provocarán que el plugin no funcione.

También se puede utilizar un editor de código como Brackets, libre para descargar y totalmente gratuito.

Del código anterior, lo realmente importante es la etiqueta de apertura de código PHP y la línea donde colocamos el nombre del plugin, que podemos personalizar con el que queramos, siempre entre los símbolos de la barra y asterisco, que marcan de la cabecera del plugin.

El resto es una información adicional que se mostrará en la lista de plugins de WordPress cuando lo instalemos.

Información mostrada en la lista de plugins instalados
Información mostrada en la lista de plugins instalados

A la hora de guardar el archivo le ponemos un nombre que nos guste (si tiene varias palabras las separamos con guiones medios) y añadimos la extensión .php, por ejemplo: "funciones.php" o "mis-funciones.php".

Por último, colocamos el archivo dentro de una carpeta que podemos nombrar con el mismo nombre que usamos para el archivo.

Instalar el plugin de funciones personalizadas en WordPress

Podemos hacerlo de varias formas, accediendo a los archivos del sitio a través del "Gestor de archivos" del servidor, utilizar un cliente FTP, o instalar el plugin como lo haríamos con cualquier otro plugin.

Para las dos primeras opciones es suficiente con colocar la carpeta, con el archivo dentro, en la ruta donde se instalan los plugins, que es "../wp-content/plugins/".

Para la tercera opción es necesario primero comprimir la carpeta en formato .zip para luego proceder a instalar el plugin desde la administración de WordPress con el botón "Subir plugin".

subir plugin para añadir funciones personalizadas en WordPress
Subir plugin de funciones personalizadas

Una vez instalado podremos ver en la pestaña de los plugins el nuestro. Pudiendo activar y desactivar su estado en función de la necesidad de cada uno.

¿Y ahora que pasa? Pues de momento poca cosa, ya que el plugin está prácticamente vacío y nos toca añadir funciones personalizadas en WordPress que sirvan para nuestro propisito.

Las funciones que añadamos a continuación de la cabecera del plugin pueden ser programadas por nosotros o recogidas, copiadas y pegadas de la numerosa información que podéis encontrar en internet.

Algunos de los artículos de mi blog contienen fragmentos de uso libre que podéis localizar si os interesa usarlos.

Modificar y añadir nuevos fragmentos de código al plugin de funciones personalizadas

Podemos añadir funciones nuevas o modificar el código que tengamos desde el mismo WordPress, si no tenemos bloqueada la función de editar plugins desde la administración de WordPress (opción muy recomendada para evitar que nos puedan inyectar código malicioso).

Pero, aunque podamos hacerlo de esta forma, no es muy recomendable.

Si el código no está comprobado que funciona correctamente podemos hacer que la web deje de funcionar hasta que eliminemos el código y dejemos el archivo como estaba.

Lo ideal es descargar el archivo, modificarlo y volver a subirlo al servidor. Si está familiarizado con el "Gestor de archivos" o un "Cliente FTP" no tendrás problemas.

También puedes volver a subir el archivo con los nuevos cambios como si fuera un plugin. Te recomiendo que en este caso vayas cambiando el número de la versión.

Durante la actualización del plugin te solicitará si quieres sustituir los archivos que existen en el servidor por los nuevos, aceptas y tendrás tus funciones instaladas.

Como última recomendación te sugiero que tu archivo no contenga más de 200-250 líneas de código para evitar

Personalizar el formulario de acceso desde el plugin de funciones

Que mejor forma de terminar que con un ejemplo práctico para añadir funciones personalizadas en WordPress.

Vamos a modificar el aspecto del formulario de acceso a la administración con el siguiente código:

Este código lo añadimos a continuación de la cabecera del plugin y nos permitirá personalizar el aspecto del formulario para logarnos en la administración.

Pasando de este aspecto:

Típico formulario de acceso a WordPress
Típico formulario de acceso a WordPress

A este otro:

Aspecto final de acceso tras añadir funciones personalizadas en WordPress
Formulario personalizado de acceso a la administración

Es una opción muy útil si diseñamos páginas para clientes y queremos ofrecer una personalización total de la web.

El código está formado por dos trozos de código o snipptes, el primero permite cambiar el aspecto a través de código CSS y el segundo cambiar el enlace del logotipo.

Vosotros podéis cambiar el logo subiendo primero la imagen a la pestaña "Medios" de vuestro WordPress y cambiando la URL que aparece en el código por la vuestra. Dependiendo del tamaño y formas de vuestro logotipo es posible que tengáis que ajustar un poco algunos valores de tamaño.

En la segunda función que hemos añadido hay que el dominio de mi página web por el vuestro, o cuando piquéis en el logo os redirigirá a mi sitio.

Conclusión

El archivo "functions.php" que incorporan los temas, permite realizar cambios a nivel de visualización y comportamiento de un sitio creado con WordPress, pero modificarlo directamente no es una solución que perdure en el tiempo.

Para hacer bien las cosas necesitamos un tema hijo o crear un plugin para añadir funciones personalizada a WordPress, lo que permitirá que no perdamos los cambios con las actualizaciones futuras.

Ahora que has aprendido desde cero a crear tu plugin de funciones, cuando veas o busques algo que necesite de la inserción de un pequeño fragmento de código en el archivo "functions.php", ya sabes como hay que hacerlo.

VISITA MI CANAL DE YOUTUBE

Juan

Juan

Juan Martín es el autor del blog Ingresos Vía Web, una persona como tú que intenta ganarse la vida en internet. Trabajo en mi blog para convertir mi sueño de generar autoempleo en realidad y poder ayudar a quien quiera, a conseguir su sueño a través de mis contenidos. Si te parece interesante apúntate a mi newsletter.

0 comentarios

Enviar un comentario

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

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

Al dejar un comentario se solicitan datos como tu email y nombre que se almacenan en una cookie para que no tengas que volver a completarlos en próximas visitas. Para enviar un comentario debes aceptar nuestra política de privacidad. Responsable de los datos: Juan Martín Pascual. | Finalidad: Controlar spam, gestión y moderación de comentarios. | Legitimación: Tu consentimiento expreso. |Comunicación de los datos: No se comunicarán a terceros salvo por obligación legal. | Destinatario: Base de datos alojada en SiteGround Spain S.L. dentro de la UE. Ver política de privacidad de Siteground. | Derechos: Acceso, rectificación, supresión, limitación, portabilidad y olvido de sus datos.

Mi canal de Youtube

Categorías

Recomendado para Afiliados de Amazon

AAWP Amazon Affiliate for WordPress
Azon Press

Esta web funciona gracias a:

Anuncio - WordPress Gestionado de SiteGround - Potente pero simple de usar. Haz clic para aprender más. Descuento directo DIVI -  10 por ciento