Su guía suprema para trabajar con temas de WordPress para niños

Si desea personalizar los temas que nos compra de Herotemes, tal vez si crea sitios web para usted o sus clientes utilizando un diseño personalizado, entonces deberá usar el poder para los niños de WordPress. La mayor cantidad de primaria, usar los temas infantiles, lo hará más eficiente: mantener el código que usa para cada proyecto en su propio padre o el uso de un padre disponible como uno de nosotros, significará que se adhiere a los principios secos (no repítete). Pero más lejos, puede usar temas de niños y padres para crear sitios de sitio con un código básico, puede crear temas personalizados basados ​​en temas de terceros o incluso puede crear su propio tema principal. Avanzado para ser utilizado como marco de tema . . En este artículo le daré un vistazo rápido a los elementos esenciales de los temas para los niños y luego le mostraré algunas técnicas más avanzadas. Aprenderás:
Cómo usar un tema infantil para adaptar un tercer tema principal o un marco de tema para las necesidades de su proyecto
La forma en que WordPress prioriza los archivos de plantilla en cada uno de los padres e hijos
Cómo anular las funciones del tema principal en el archivo de función del tema del niño.
Entendiendo los temas de los padres y los niños en teoría, cualquier tema puede actuar como padre, aunque algunos están mejor diseñados para este papel (¡incluido el nuestro!). Si está utilizando una de nuestras tareas y desea cambiarla para su propio proyecto, es mucho mejor usar un tema infantil para hacerlo que poner el tema principal, lo que significa que perderá todos los cambios cuando esté actualizado . Tema para futuras versiones. Para crear un tema infantil, simplemente cree un nuevo tema y agregue lo siguiente al comienzo de la hoja de estilo. Mi ejemplo a continuación usa el tema Herotemes Helpguru como padre, pero puede usar cualquier tema, incluido otro producto de Herotema, como Knowall. ¡Asegúrese de construir su base de conocimiento hoy! Nuestro tema de Knowall incluye un tema infantil para ayudar a personalizar su sitio web desde su base de conocimiento. Obtenga el tema.

/*
Nombre del tema: mi hijo tema
Tema Uuri: URL del tema o el sitio para el sitio para
Descripción: Descripción de para qué sirve el tema y sus características principales.
Autor: Tu nombre
Plantilla: ayuda
Versión: 1.0
*/
@Import url (“../ helpguru/css/style.css”);
Las líneas importantes son estas dos: plantilla: helpguru
@Import url (“../ helpguru/css/style.css”);
La primera sección específica de los Tempts, que le dice a WordPress que este es un tema infantil y que su padre es el tema Helpguru. Tenga en cuenta que aquí usa el nombre de la carpeta del padre y no el nombre del tema (por lo tanto, utilicé “Helpguru”, no “Helpguru”).
Helpguru se puede transformar utilizando un tema infantil

La segunda sección importa la hoja de estilo del tema principal, lo que significa que todos los estilos de los padres se activarán en el tema del niño. Luego agregue su propio estilo bajo esta declaración @import: esto significa que se utilizará el estilo en ambos temas, pero donde hay una declaración en ambas hojas de estilo para el mismo elemento, el CSS del tema infantil prevalecerá debido a la cascada. (como el terreno de su hijo). El estilo viene de acuerdo con el estilo del tema principal). Un tema infantil puede consistir en una hoja de estilo y nada más, si lo desea, en cuyo caso todo lo que usará es reemplazar parte del estilo de los padres. Alternativamente, puede agregar archivos de plantilla adicionales y/o un archivo de características, en cuyo caso tendrá que comprender cómo WordPress accede a los archivos de plantilla de padres e hijos. Tablon corto a los padres y el padre y el niño es bastante simple. Cuando se muestra una página en particular (o publicación o cualquier otro tipo de contenido), WordPress utilizará el archivo de plantilla más relevante del tema principal o el segundo, según la jerarquía de plantillas. Si encuentra dos versiones del mismo archivo de plantilla, usará la del niño. Esto significa que los archivos de plantilla de su hijo reemplazarán los archivos de plantilla de patrón en dos escenarios:
Si el tema de su hijo contiene un archivo de plantilla que está arriba en la jerarquía que los de los padres;
O si el tema de los padres y el hijo contiene una versión del archivo de plantilla necesario.
Elegir los archivos de plantilla de tema para padres o hijos WordPress usará la jerarquía de plantillas para determinar qué archivo de plantilla usar, pero interactúa con los archivos que tiene en cada uno de los padres e hijos. Para decir simple, WordPress pasa por tres pasos: identifique el tipo de pantalla de contenido.
Funciona a través de la jerarquía de plantillas hasta que encuentra un archivo para mostrar ese contenido, ya sea en el padre o el segundo tema.
Si el archivo está presente tanto en el padre como en el niño, usa el del niño.
Ilustramos esto con un ejemplo. La siguiente tabla presenta el conjunto de archivos de plantilla en dos temas hipotéticos, uno de los cuales es el hijo del otro. Los archivos que destacamos tienen prioridad.
Cómo WordPress selecciona plantillas para usar
Entonces, en el ejemplo anterior, veamos qué archivos de plantilla se usarían para mostrar ciertos tipos de contenido:
Las publicaciones únicas para el tipo de “producto” personalizado se mostrarán utilizando un solo producto.php del niño.

Las publicaciones únicas para otros tipos de publicaciones (incluidas las publicaciones normales) se mostrarán utilizando Single.php del niño.
Las páginas estáticas se mostrarán utilizando Page.php de los padres.
Los listados para la categoría de widgets se mostrarán utilizando category-widgets.php desde el niño.
Otras listas de categorías se mostrarán utilizando Category.php de los padres.
Otras listas de archivo se mostrarán utilizando Archive.php de los padres.
Los resultados de búsqueda se mostrarán usando Search.php de los padres.
Se mostrarán 404 páginas usando 404.php del padre.
Otras páginas sin un archivo de plantilla específico se mostrarán utilizando index.php del tema infantil. Al sobrevisar más la funcionalidad del tema principal además de sobrescribir o completar los archivos CSS y/o plantillas en un tema principal, puede usar Un segundo tema para reemplazar la funcionalidad del tema principal o para agregar funcionalidades adicionales.
¡Advertencia! Si todo lo que usa el tema del niño es agregar características adicionales, sería mejor escribir un complemento. Desafortunadamente, los archivos de función de los temas de los padres y los niños no interactúan como las hojas de estilo, de hecho, funciona en la dirección opuesta (confundido, lo sé). WordPress llama a las funciones en el tema principal después de aquellos sobre el tema del niño, lo que significa que pueden anular las funciones del niño. Sé que esto suena un poco doloroso: creaste un tema para niños, porque eso es lo que quieres en tu sitio, ¿verdad? Bueno, afortunadamente, hay formas de superar esto. El primer método es el que usa en el tema de su hijo y esto es establecer la prioridad cuando adjunta sus funciones a la acción relevante o a los ganchos de filtro. El segundo se hace en el tema principal y esto para hacer sus funciones. Llegaré a esto a la vez, pero primero veamos el método de su hijo.
Usando la prioridad para anular la funcionalidad del tema principal para activar cada función que agregue al niño, deberá adjuntarlo a un gancho de acción o gancho de filtro usando add_action () o add_filter (). Las funciones add_action () y add_filter () tienen tres parámetros:
$ etiqueta: el identificador único para la acción del filtro o el gancho
$ function_to_add: el nombre de su función $ prioridad: la prioridad con la que desea conectar su función (más pronto)

Con add_filter () puede usar un cuarto parámetro opcional, $ argumentos, pero esto no es particularmente relevante para los temas infantiles. En la mayoría de los casos, solo se utilizan los dos primeros parámetros (ambos son necesarios), pero puede usar el parámetro de prioridad $ opcional para reemplazar una función del tema principal con el tema infantil. Cuanto mayor sea la prioridad, más adelante es: el valor predeterminado es 10, por lo que si el tema principal no especifica una prioridad, simplemente establezca la prioridad en su hijo en un número mayor que 10. Veamos cómo funciona esto. Imagínese trabajar con un tema de Helpguru y usted desea anular la funcionalidad del menú y agregar su propio tema. Este tema incluye la función ht_theme_setup () para configurar el tema (incluida la grabación de menús, agregar soporte para las imágenes presentadas y más), que se adjunta al gancho de acción después de_setup_theme. El código en el archivo de características del Helpguru es el siguiente:
If (! Function_exists (‘ht_theme_setup’)):
Función ht_theme_setup () {
// Contenido de la función
}
}
add_action (‘after_setup_theme’, ‘ht_theme_setup’);
Para anular los elementos del ht_theme_setup () (pero no todos: llegaremos a esto) en el niño, escribiría una función que reemplaza los elementos de funcionalidad ofrecidos por Helpguru y lo adjuntará a la gancho After_Setup_Theme, especificando una prioridad más grande de 10: function my_theme_setup () {
// Contenido de la función
}
add_action (‘after_setup_theme’, ‘my_theme_setup’, 15); Cuando WordPress cumple con estas funciones adjuntas al mismo gancho, primero activará la prioridad más baja, es decir, el padre. Luego activará el que tiene una prioridad más alta del tema del niño, lo que significa que puede anular la función del tema principal. Como se mencionó anteriormente, hay otro método, que es una buena práctica para escribir en su tarea, para que puedan usarse más fácilmente como temas principales, y esto es para hacer sus funciones.
Utilizando las funciones conectadas para permitir el reemplazo del tema de un niño porque WordPress pasa la función del tema principal después de las del tema del niño, puede codificar las funciones del padre, para que verifiquen una función con el mismo nombre en El tema infantil y, si hay uno, la función del tema de los padres no lo es. pasó. Haga esto con una declaración condicional, como la que vi anteriormente en Helpguru: If (!
Función ht_theme_setup () {
// Contenido de la función
}
}
Si ya no se ha transmitido ninguna función con el mismo nombre (por ejemplo, en el tema infantil), se transmitirá la función del tema principal. Pero si WordPress ya ha encontrado una función con este nombre, ignorará la función conectable (es decir, la del padre). Para que esto funcione, solo tiene que crear funciones en el tema del niño con el mismo nombre que los de los padres que desea reemplazar. Entonces, para anular la función ht_theme_setup (), usaría esto en la función: function ht_theme_setup () {
// Contenido de la función
}

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

Biblioteca Divi: explorarea posibilităților de sincronizare selectivă a bibliotecii Divi

Biblioteca Divi: explorarea posibilităților de sincronizare selectivă a bibliotecii Divi

Leave a Reply

Your email address will not be published. Required fields are marked *