Blog de arsys.es

Cómo utilizar múltiples archivos para componer un tema de WordPress con secciones personalizadas

Acabamos (de momento) nuestra serie de artículos sobre la creación de temas propios para  WordPress y lo hacemos explicando cómo podemos  personalizar cada sección de un sitio web desarrollado con este gestor de contenidos utilizando archivos independientes como plantilla.

Hasta ahora, y tal y como vimos en Primeros pasos para crear temas propios de WordPress, hemos  desarrollado un tema gráfico en el que solamente teníamos una plantilla, definida mediante el archivo index.php. Aunque esto es posible, no suele ser recomendable servir todas las páginas del sitio con un único código.  Lo más habitual es tener varios archivos donde se puede personalizar el aspecto de páginas o secciones completas.

Por tanto, en WordPress un tema gráfico puede contener varios archivos de plantilla. El fundamental es index.php, pero si existen otros archivos que veremos a continuación, WordPress los tomará como base para construir otras secciones.

Para saber cuál es el archivo PHP que WordPress intentará usar, dependiendo de cada contenido que queremos presentar, existe la denominada jerarquía de temas. Mediante esta jerarquía,WordPress irá intentando acceder a diversos archivos. Y en caso de que no estén disponibles, acabaría siempre usando el index.php.

En la propia documentación de WordPress encontraremos este diagrama que expresa este concepto de la jerarquía de temas. Basta echarle un vistazo, para hacerse a la idea de lo complejo y especializado que puede llegar a ser el uso de cada plantilla dentro de un tema.

Archivos principales de un tema

Quizás el diagrama de la jerarquía de temas pueda asustar a una persona que comienza en el desarrollo con WordPress. No hay que preocuparse demasiado, porque muchas partes no son necesarias desde el principio y siempre hay tiempo de profundizar. No obstante, repasamos  una lista de archivos principales que sí conviene empezar utilizando:

Desarrollar un template para las páginas

Para poner un ejemplo en el que podamos ver algo de código, vamos a desarrollar un template específico para lo que serían las páginas (recuerda que las páginas en WordPress suelen ser con contenido más estático -quienes somos, privacidad, mapa, etc.- y los post o entradas suelen renovarse con mayor frecuencia). En nuestro serial Primeros Pasos con WordPress encontrarás información más detallada sobre cada uno de estos elementos del CMS.

Tal como estaba nuestro sitio hasta ahora, todo se servía a través de index.php. Ahora vamos a crear un nuevo archivo, dentro del directorio del tema que estamos desarrollando, llamado page.php.

El código de una plantilla para usar como página será muy parecido al que hemos visto en el index.php. Usaremos varias de las funciones del API de WordPress que hemos presentado en otros artículos.

<?php
get_header();
?>
 <?php while ( have_posts() ) : the_post(); ?>
 <div class="pagina">
 <?php the_title( '<h1 class="titulopagina">', '</h1>' ); ?>
 </div>
 <div class="contenidopagina">
 <p>Lo que vas a ver ahora es una página del sitio...</p>
 <?php the_content(); ?>
 </div>
 <?php endwhile ?>
<?php
get_footer();
?>

Básicamente, tenemos que extraer el contenido de la página, para lo que usaremos the_post(). Luego podemos mostrar su título y contenido con las funciones the_title() y the_content().

Además, estás viendo que es posible reutilizar parte del código que ya teníamos para este site, el que habíamos definido como cabecera y pie, usando las funciones get_header() y get_footer().

Una vez creado ese archivo puedes visualizar cualquiera de las páginas de tu sitio, creadas mediante el admin de WordPress.

El desarrollo de temas es un área donde podemos soltar nuestra creatividad y ser tan precisos como deseemos, personalizando el sitio según las necesidades de cada proyecto. En éste y los anteriores capítulos de la serie que hemos publicado hemos abordado aspectos muy generales, que te ayudarán a comenzar con buen pie. Por último, queremos entregarte los archivos de código que hemos realizado en este y otros artículos, para que te sirvan de base para comenzar. Te los puedes descargar directamente desde este enlace.

La instalación básica de WordPress ya viene con algunos temas de base cuyo código conviene repasar para seguir aprendiendo y experimentando en la creación de temas propios.