✅¿Existen los Child Plugins? Cómo Editar la Template.php de un Plugin sin Perder los Cambios al Actualizar

Cuando trabajamos con WordPress, la posibilidad de personalizar plugins y temas es una necesidad frecuente. En el caso de los temas, existe la solución de los child themes (temas hijos), que permiten modificar archivos sin afectar al tema principal y sin perder cambios tras una actualización. Sin embargo, muchos usuarios se preguntan si existen los child plugins o si hay una manera de modificar los archivos .php de un plugin sin que las actualizaciones sobrescriban los cambios.

En este artículo abordaremos:

  • Si existen los child plugins en WordPress.
  • Cómo editar la plantilla template.php de un plugin sin perder los cambios al actualizar.
  • En qué plugins es seguro hacer este tipo de modificaciones.

¿Existen los Child Plugins en WordPress?

La respuesta corta es: no de manera nativa. WordPress no tiene un sistema oficial de child plugins como lo hace con los temas. No existe una estructura integrada que permita heredar funcionalidades de un plugin padre, mantener cambios separados y seguir recibiendo actualizaciones del plugin original sin sobrescribir las modificaciones.

Sin embargo, hay soluciones alternativas para modificar plugins sin perder los cambios, las cuales exploraremos a continuación.

Cómo Editar template.php de un Plugin sin Perder los Cambios

Siempre que sea posible, es recomendable trabajar con hooks y filtros en lugar de editar directamente las plantillas de un plugin. WordPress ofrece una gran cantidad de acciones y filtros que permiten modificar la funcionalidad de un plugin sin tocar sus archivos originales, lo que asegura compatibilidad con futuras actualizaciones.

Si un plugin proporciona los hooks necesarios, puedes agregar código personalizado en el archivo functions.php de tu tema hijo para modificar su comportamiento sin alterar los archivos principales.

1. Verificar si el Plugin Soporta Sobreescritura de Plantillas

No todos los plugins permiten este método. Para comprobar si un plugin lo soporta:

  • Revisa la documentación oficial del plugin.
  • Busca una carpeta llamada templates dentro del directorio del plugin.
  • Verifica si dentro del código de los archivos PHP del plugin hay funciones como get_template_part() o locate_template() que indican que WordPress buscará la plantilla en otros directorios antes de usar la predeterminada.

2. Copiar la Plantilla en el Tema Hijo

Si el plugin permite la sobreescritura de archivos y no es posible usar hooks, sigue estos pasos:

  1. Ubicar la plantilla que deseas modificar dentro de la carpeta del plugin (por ejemplo, wp-content/plugins/plugin-ejemplo/templates/template.php).
  2. Copiar el archivo en la carpeta de tu tema hijo. La ruta dependerá del plugin, pero generalmente es algo como:wp-content/themes/tu-tema-hijo/plugin-ejemplo/template.php
  3. Modificar el archivo copiado según tus necesidades.
  4. Probar los cambios en el sitio para asegurarte de que se reflejan correctamente.

Plugins Populares que Soportan la Sobreescritura de Plantillas

Algunos de los plugins más utilizados en WordPress permiten este método. A continuación, algunos ejemplos:

  1. WooCommerce: Permite personalizar las plantillas de productos y páginas de tienda copiando los archivos desde woocommerce/templates al directorio del tema hijo.
  2. Easy Digital Downloads: Facilita la modificación de plantillas relacionadas con descargas digitales al copiar los archivos de easy-digital-downloads/templates al tema hijo.
  3. The Events Calendar: Permite sobrescribir plantillas de eventos copiando los archivos desde the-events-calendar/src/views al directorio tribe-events en el tema hijo.
  4. WP Job Manager: Ofrece la posibilidad de personalizar las plantillas de listados de empleos copiando los archivos de wp-job-manager/templates al tema hijo.
  5. BuddyPress: Permite modificar las plantillas de perfiles y actividades copiando los archivos desde buddypress/bp-templates/bp-legacy/buddypress al tema hijo.
  6. bbPress: Facilita la personalización de foros copiando las plantillas desde bbpress/templates/default al directorio del tema hijo.
  7. LearnDash: Permite sobrescribir plantillas de cursos y lecciones copiando los archivos desde learndash/templates al tema hijo.
  8. MemberPress: Ofrece la posibilidad de personalizar las plantillas de membresías copiando los archivos de memberpress/app/views al tema hijo.
  9. GiveWP: Facilita la modificación de plantillas de donaciones copiando los archivos desde give/templates al directorio del tema hijo.
  10. Restrict Content Pro: Permite personalizar las plantillas de restricción de contenido copiando los archivos de restrict-content-pro/templates al tema hijo.
  11. AffiliateWP: Ofrece la posibilidad de sobrescribir plantillas relacionadas con afiliados copiando los archivos desde affiliate-wp/templates al tema hijo.
  12. WPForms: Permite modificar las plantillas de formularios copiando los archivos desde wpforms/templates al directorio del tema hijo.
  13. Ninja Forms: Facilita la personalización de plantillas de formularios copiando los archivos de ninja-forms/templates al tema hijo.
  14. Gravity Forms: Permite sobrescribir plantillas de formularios copiando los archivos desde gravityforms/templates al tema hijo.
  15. EDD FES (Front End Submissions): Ofrece la posibilidad de personalizar las plantillas de envíos frontales copiando los archivos de edd-fes/templates al tema hijo.
  16. WPML: Facilita la modificación de plantillas relacionadas con la traducción copiando los archivos desde wpml/templates al directorio del tema hijo.
  17. Polylang: Permite personalizar las plantillas de idiomas copiando los archivos de polylang/templates al tema hijo.
  18. MailChimp for WordPress: Ofrece la posibilidad de sobrescribir plantillas de formularios de suscripción copiando los archivos desde mailchimp-for-wp/templates al tema hijo.
  19. WP Simple Pay: Facilita la personalización de plantillas de pagos copiando los archivos de wp-simple-pay/templates al tema hijo.
  20. FacetWP: Permite modificar las plantillas de facetas de búsqueda copiando los archivos desde facetwp/templates al directorio del tema hijo.

Ten en cuenta que la estructura de carpetas y la ubicación de las plantillas pueden variar según el plugin. Es recomendable consultar la documentación oficial de cada plugin para obtener instrucciones precisas sobre cómo sobrescribir sus plantillas en el tema hijo.

Además como comenté antes, siempre que sea posible, es preferible utilizar hooks y filtros proporcionados por los plugins para realizar personalizaciones, ya que este enfoque facilita el mantenimiento y la compatibilidad con futuras actualizaciones.

Estructura de Carpetas para Modificaciones

Por ejemplo, si deseas modificar la plantilla de un producto en WooCommerce, debes copiar:

wp-content/plugins/woocommerce/templates/single-product.php

A la siguiente ruta en tu tema hijo:

wp-content/themes/tu-tema-hijo/woocommerce/single-product.php

Este mismo principio aplica a otros plugins que permiten la sobreescritura de plantillas.

Conclusión

Aunque WordPress no tiene un sistema de child plugins como los temas hijos, hay varias formas de modificar plugins sin perder cambios al actualizar:

  • Siempre que sea posible, usa hooks y filtros en lugar de editar directamente las plantillas de un plugin.
  • Si el plugin lo permite, copiar las plantillas en el tema hijo.

Siempre es recomendable revisar la documentación del plugin antes de hacer cambios y, en caso de que el plugin no ofrezca opciones de personalización, evitar editar archivos directamente para no perder modificaciones tras una actualización. Siguiendo estos métodos, podrás personalizar tus plugins de forma segura y eficiente.

Nos vemos en el siguiente tutorial. Un saludo.

5/5 - (2 votos)
Compartir Artículo

Un comentario

  1. Fran Salas Master WP 1 año atrás

    Deja tu opinión y dudas en los comentarios.

¿Tienes una duda o sugerencia sobre este artículo?

Puedes dejar un comentario de forma anónima, sin necesidad de registrarte ni proporcionar ningún dato personal. Tu mensaje se publicará como “Usuario Anónimo No Premium”, un perfil que agrupa a todos los visitantes no registrados.

Importante: para evitar el spam automático, todos los comentarios anónimos deben comenzar con el símbolo #. Ejemplo: # Tengo una duda sobre los shortcodes personalizados...

Este espacio está destinado exclusivamente a preguntas concretas, dudas o sugerencias relacionadas con el contenido del artículo. Por respeto a los demás lectores, no se publicarán temas sin relación.

Privacidad y normas:
  • No tienes que agregar tu nombre, correo ni ningún otro dato identificativo.
  • No se permiten enlaces en comentarios anónimos.
  • No se permiten símbolos especiales como < o > (menor y mayor que), ya que se consideran intentos de insertar código y serán bloqueados.
  • Todos los comentarios anónimos pasan por revisión antes de ser publicados y solo se aprobarán si aportan valor al contenido del artículo.
¿Quieres comentar con tu nombre y que tu mensaje se publique al instante? Inicia sesión o regístrate.

Deja un comentario

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

0%