jueves, 7 de noviembre de 2013

Crear un tema hijo en WordPress

Un tema menor WordPress es un tema que hereda la funcionalidad de otro tema, llamado el tema principal. Tema de niños le permite modificar o añadir a la funcionalidad de ese tema principal. Un tema menor es la forma más segura y más fácil de modificar un tema existente, si desea hacer algunos cambios pequeños o grandes cambios. En lugar de modificar directamente los archivos de tema, puede crear un tema menor y anular interior.

Aquí hay algunas razones:¿Por qué utilizar un tema infantil?
  • Si modifica un tema existente y se actualiza, se perderán los cambios. Con un tema menor, se puede actualizar el tema de los padres (que podría ser importante para la seguridad o la funcionalidad) y aún así mantener los cambios.
  • Se puede acelerar el tiempo de desarrollo.
  • Es una buena manera de empezar, si usted está aprendiendo desarrollo del tema de WordPress.

Cómo crear un Tema Niño

  • Estructura de directorio temático infantil
    Cree un directorio en el directorio de temas para mantener el tema infantil. El directorio de temas es wp-content/themes. Usted debe nombrar el directorio sin ningún espacio como parte de la denominación, y es práctica común usar el nombre de la carpeta del tema con los padres "hijo" adherido a la misma. Por ejemplo, si usted está haciendo un niño del tema twentythirteen, el nombre de la carpeta sería twentythirteen-hijo.
  • En el directorio del tema infantil, cree un archivo llamado style.css. Este es el único archivo necesario para hacer un tema niño. La hoja de estilo debe comenzar con las siguientes líneas:
/ *
Nombre Tema: Twenty Trece Niño
URI Tema: http://example.com/twenty-thirteen-child/
Descripción: Twenty Trece Tema Niño
xample.com Plan
Autor: John Doe Autor URI: http:// etilla: twentythirteen Versión: 1.0.0 * /
."); / * = Personalización tema comienza aquí -
@ Import url ("/ twentythirteen / style.css
.------------------------------------------------- ------------ * /
Usted puede cambiar cada una de estas líneas para adaptarse a su tema. Las líneas sólo son necesarios el nombre del tema, y la plantilla. La plantilla es el nombre del directorio del tema principal. En este caso, el tema principal es el tema TwentyThirteen, por lo que la plantilla es twentythirteen, que es el nombre del directorio en el que reside el tema TwentyThirteen. Si quieres hacer que un niño de un tema con el nombre del directorio ejemplo-theme-nombre, entonces deberías usar Plantilla: ejemplo-theme-nombre .
  • Hoja de estilo del tema infantil se incluye después de que el tema de los padres y de estilos por lo tanto invalidar las de hoja de estilos del tema principal.
  • Activar el tema infantil. Inicie sesión en el salpicadero de su sitio y vaya al Panel de Administración > Apariencia > Temas . Verá su tema infantil que aparece allí. Haga clic en Activar.

Archivos de plantilla

Si desea cambiar algo más que la hoja de estilo, el tema niño puede sobrescribir cualquier archivo en el tema de los padres: basta con incluir un archivo con el mismo nombre en el directorio de temas infantil y se sobrescribirá el archivo equivalente en el directorio del tema principal. Por ejemplo, si desea cambiar el código PHP para el encabezado del sitio, puede incluir un header.php en el directorio de su tema infantil, y que el archivo será usado en lugar de header.php del tema principal.
También puede incluir archivos en el tema de niños que no están incluidos en el tema de los padres. Por ejemplo, es posible que desee crear una plantilla más específica que se encuentra en el tema de los padres, como una plantilla para una página específica o categoría de archivo. Consulte la Jerarquía Plantilla para obtener más información acerca de cómo WordPress decide qué plantilla va a utilizar.

Usando functions.php

A diferencia style.css , el functions.php de un tema infantil no anula su contraparte de los padres. En su lugar, se carga además de functions.php de los padres . (En concreto, se carga a la derecha antes de que el archivo de los padres.)
De esa manera, el functions.php de un tema infantil ofrece un inteligente método, sin problemas de modificar la funcionalidad de un tema principal. Digamos que usted desea agregar una función de PHP para su tema. La forma más rápida sería la de abrir sufunctions.php archivo y poner la función allí. Pero eso no es inteligente: La próxima vez que el tema se actualiza, la función va a desaparecer. Pero hay una alternativa, que es la manera más inteligente: se puede crear un tema menor, agregue una functions.phparchivo en el mismo, y añadir su función a ese archivo. La función va a hacer exactamente el mismo trabajo desde allí también, con la ventaja de que no se verán afectados por los futuros cambios del tema principal. No copie el contenido completo de functions.php del tema principal en functions.php en la temática infantil.
La estructura de functions.php es simple: Una etiqueta PHP abertura en la parte superior, una etiqueta PHP cierre en la parte inferior, y, entre ellos, los bits de PHP. En ella se puede poner tantas o tan pocas funciones como desee. El siguiente ejemplo muestra una primaria functions.php archivo que hace una cosa simple: Añade un enlace favicon a la cabeza de los elementos de las páginas HTML.
función favicon_link () {
'rel="shortcut <link icon" type="image/x-icon" href="/favicon.ico" />' echo. "\ N";
}
d_action ('wp_head', 'favicon_link');
a d
SUGERENCIA PARA DESARROLLADORES DE TEMA. El hecho de que eso es un tema menor functions.php se carga primero significa que usted puede hacer las funciones de usuario de su tema enchufable, es decir, sustituible por un niño temático que declaró bajo condición. Por ejemplo:
if (! function_exists ('theme_special_nav')) {
función theme_special_nav () {
/ / Hacer algo. }
}
De esa manera, un tema niño puede sustituir a una función de PHP de la matriz simplemente declarando de antemano.

Hacer referencia / inclusión de archivos en su tema Niño

Cuando es necesario incluir los archivos que residen dentro de la estructura de directorio de su tema infantil, utilizaráget_stylesheet_directory () . Debido style.css de la plantilla padre se sustituye por style.css del tema infantil, y su style.css reside en la raíz del subdirectorio, puntos get_stylesheet_directory () de su tema infantil en el directorio de su tema niño (no el directorio del tema de los padres).
He aquí un ejemplo, utilizando require_once , que muestra cómo se puede utilizar get_stylesheet_directory al hacer referencia a un archivo almacenado dentro de la estructura de directorio de su tema infantil.
require_once (get_stylesheet_directory () '/ my_included_file.php.);

Otra información útil

Uso de formatos de mensaje

Un tema secundario hereda los formatos de mensaje definidos por el tema de los padres. Pero, cuando la creación de temas infantiles, tenga en cuenta que el uso de add_theme_support ("post-formatos ') se anulará los formatos definidos por el tema de los padres, para no agregar a ella.

Apoyo RTL

Apoyar idiomas RTL, añadir rtl.css archivo en el tema infantil, que contiene:
/ *
Nombre Tema: Twenty Trece Niño
Plantilla: twentythirteen * /
/ rtl.css..");
@ Import url ("/ twentythirtee n
WordPress archivo rtl.css carga automática sólo si is_rtl () . Aunque el tema de los padres no tiene ningún archivo rtl.css, se recomienda agregar el archivo rtl.css a su tema infantil.

Internacionalización

Temas infantiles, al igual que otras extensiones, se pueden preparar para ser traducido a otros idiomas mediante el uso de funciones gettext. Para una visión general, consulte i18n para desarrolladores de WordPress . En esta sección se abordará consideraciones especiales con respecto a la internacionalización de los temas infantiles.
  • Comience agregando un directorio idiomas. Algo así como my-theme/languages ​​/ funciona bastante bien.
  • A continuación, una textdomain necesita ser cargado. load_child_theme_textdomain () se puede utilizar en functions.php durante la acción after_setup_theme. Lo siguiente debe ilustrar:
<? Php
/ **
nfiguración textdomain mi hijo de tema. *
* C o* Declarar textdomain para este tema infantil.
os / languages ​​/ directorio. * / my_child_theme_setup function () { load_c
* Las traducciones pueden ser presentadas por lhild_theme_textdomain ("mi hijo-tema", get_stylesheet_directory () '/ idiomas.); }
add_action ('after_setup_theme', 'my_child_theme_setup');
?>
En este punto, las cadenas codificadas en el tema de niños están listos para ser preparado para ser traducido. Este es un ejemplo sencillo de eco de la frase "Código es poesía":
<? Php
_e ('Código es poesía', 'mi hijo-el tema');
?>
El dominio texto definido en load_child_theme_textdomain () se debe utilizar para traducir todas las cadenas en el tema de niño. En el caso de que un archivo de plantilla de la matriz se ha incluido, la textdomain debe ser cambiado de la definida en la matriz a la definida por el niño.
via | codex

Si te ha gustado haz click en la publicidad para poder mantener la web.
GRACIAS

También me puedes seguir por las redes sociales o suscribirte por email para estar informado de las ultimas noticias que publico.

Mas abajo tienes artículos relacionados con este mismo que acabas de leer saludos y gracias por tu visita



Articulos relacionados por categorias