Bienvenidos a la séptima lección del curso de Genesis avanzado, en el que vemos cómo programar con Genesis, el theme framework de WordPress.
Hoy veremos los hooks de los dos archivos comments.php, y cómo sobrescribir las funciones de Genesis si no tienen un filtro con lo que queremos modificar.
Empecemos pues viendo los dos archivos comments.php, sus principales diferencias, y qué hooks contienen.
7.1 - Hooks de Genesis en comments.php
Hay dos archivos comments.php. El primero es propiamente de plantilla (con 9 hooks), y el segundo de estructura del framework (con 4 hooks). Empecemos con el primero.
Como podéis ver, el funcionamiento de añadir acciones que a continuación creamos es el mismo que en las clases anteriores. Pero vamos a ver ahora el otro archivo comments.php, que depende del primero, y veamos también cómo sobrescribir las funciones del propio framework a través de action hooks.
7.2 - Sobrescribir funciones de Genesis
Cierto es que muchas funciones tienen los llamados "Filter hooks", que veremos más adelante, que nos permiten modificar ciertas cosas dentro de una función. Pero también es cierto que en muchas ocasiones esos filtros no existen, o simplemente no están en el lugar exacto que los necesitamos.
En tales casos, necesitaremos sobrescribir las funciones de Genesis, para que incorporen las modificaciones que nosotros queremos. ¡Pero ojo! Sin modificar el framework en sí, ya que se perderían las modificaciones al actualizarlo. ¿Cómo lo hacemos? Muy fácil, vamos a ello:
¿Interesante verdad? Hemos conseguido sobreescribir una función simplemente copiando la original, quitándola y colocando en su sitio la nuestra, en el mismo hook, en la misma ubicación.
Una forma mucho más limpia y eficiente de modificar algo que simplemente modificar el framework en sí, y que así evitamos perder las modificaciones, porque estamos trabajando con un child theme. Y así de paso hemos repasado todo el tema de las prioridades y órdenes de carga.
En fin, una lección completita que espero que os acabe de clarificar y reforzar los conceptos básicos de Genesis. Ya tenéis deberes, o sea que a trabajar, que en la próxima clase... ¡Seguimos!
Todos los capítulos de este curso:
- Curso de Genesis Avanzado #1: Soporte para Custom Post Types
- Curso de Genesis Avanzado #2: Condicionales
- Curso de Genesis Avanzado #3: init.php hooks
- Curso de Genesis Avanzado #4: header.php hooks
- Curso de Genesis Avanzado #5: framework.php hooks
- Curso de Genesis Avanzado #6: loops.php hooks y prioridades
- Curso de Genesis Avanzado #7: comments.php y sobrescribiendo funciones
- Curso de Genesis Avanzado #8: sidebar.php y sidebar-alt.php hooks
- Curso de Genesis Avanzado #9: footer.php hooks
- Curso de Genesis Avanzado #10: Filter hooks