1. Code
  2. WordPress
  3. Theme Development

Crear una Plantilla para la Página de Archivos de tu Tema en WordPress

Scroll to top

Spanish (Español) translation by Eva Collados Pascual (you can also view the original English article)

Una página de archivos es gran manera de conectar con todos tus archivos importantes como archivos mensuales y categoría de los archivos en una página dedicada. Es una gran alternativa para vincular simplemente a tus mensajes antiguos en tu sidebar y pie de página. Sorprendentemente, un montón de temas por ahí uno no incluye por defecto... así que hoy vamos a mostrarle una manera rápida de edificio uno desde cero.

El tema de WordPress de Kubrick, que era el tema por defecto de WordPress por 5 años (versión 1.5 hasta 3.0), vino empaquetado con su propia plantilla archives.php. Lamentablemente, los temas de WordPress por dos defecto (TwentyTen y TwentyEleven) no tienen.

Como no vienen más temas de WordPress con una plantilla de archivos, es con frecuencia necesaria crear la tuya. En este tutorial que nos va caminando a través de cómo crear una página de archivos simples usando la corriente predeterminado tema TwentyEleven sin embargo, estos pasos pueden aplicarse a cualquier diseño de WordPress.


Antes de Empezar

Por favor, no confundas la plantilla archive.php y la plantilla archives.php. La plantilla de archive.php está incluida en la mayoría de los temas y se utiliza para generar archivos mensuales, archivo de categorías, páginas de autor (el archivo padre index.php será usado en caso de no disponer de ninguna plantilla archive.php) etcetera. Por ejemplo, los archivos como www.yoursite.com/2011/12/ y www.yoursite.com/category/main-category/.

Lo que estamos creando hoy en día es la plantilla archives.php. Esta ayuda a crear una página de archivo dedicada en tu sitio web que muestre todos tus archivos/entradas mensuales. Por ejemplo, www.yoursite.com/archives/.


Paso 1 Copia la Plantilla Page.php

La mejor manera de crear cualquier nueva plantilla de página de WordPress es copiar el código de la plantilla de temas page.php y quitando el código dentro del área de contenido principal. La plantilla de page.php de veinte once se ve así:

1
2
<?php<br />
3
/**<br />

4
 * The template for displaying all pages.<br />

5
 *<br />

6
 * This is the template that displays all pages by default.<br />

7
 * Please note that this is the WordPress construct of pages<br />

8
 * and that other 'pages' on your WordPress site will use a<br />

9
 * different template.<br />

10
 *<br />

11
 * @package WordPress<br />

12
 * @subpackage Twenty_Eleven<br />

13
 * @since Twenty Eleven 1.0<br />

14
 */<br />
15
<br />
16
get_header(); ?><br />
17
<br />
18
  	<div id="primary"><br />
19
			<div id="content" role="main"><br />
20
<br />
21
				<?php while ( have_posts() ) : the_post(); ?><br />
22
<br />
23
					<?php get_template_part( 'content', 'page' ); ?><br />
24
<br />
25
					<?php comments_template( '', true ); ?><br />
26
<br />
27
				<?php endwhile; // end of the loop. ?><br />

28
<br />
29
			</div><!-- #content --><br />

30
		</div><!-- #primary --><br />

31
<br />
32
<?php get_footer(); ?>

Paso 2 Crea Una Plantilla Archives.php vacía

Copia el código de la plantilla page.php en un nuevo archivo de plantilla llamado archives.php. Ahora vamos a eliminar el código que no necesitamos para nuestra plantilla de archivos.

El área de contenido principal de la plantilla de page.php de veinte once simplemente muestra el bucle. Todo lo que necesitas hacer es eliminar esas 4 líneas de código. (es decir, quitar el tiempo declaración).

Además, debes añadir lo siguiente:

  • Nombre de la Plantilla: Plantilla de Archivos - añade esto en la parte superior de tu plantilla para que se pueda seleccionar como plantilla de página desde el editor de página.
  • <? php the_title(); ?> - Esto mostrará el título de la página de archivos.
  • <? php the_post(); the_content(); ?> - Esto hará que cualquier contenido que se agregue a tu Página de Archivos a través de su editor en WordPress sea mostrado en la parte superior de la página (no es necesario añadir esta línea si no tienes pensado escribir una introducción antes de los archivos).

Esto nos da lo siguiente:

1
2
<code>
3
<?php<br />
4
/**<br />

5
 * Template Name: Archives Template<br />

6
 * Description: A Page Template that lets us created a dedicated Archives page<br />

7
 *<br />

8
 * @package WordPress<br />

9
 * @subpackage Twenty_Eleven<br />

10
 * @since Twenty Eleven 1.0<br />

11
 */<br />
12
<br />
13
get_header(); ?><br />
14
<br />
15
		<div id="primary"><br />
16
			<div id="content" role="main"><br />
17
                          <br />
18
		          <h1 class="entry-title"><?php the_title(); ?></h1><br />
19
                          <?php the_post(); the_content();  ?><br />
20
<br />
21
                          <!-- The main functions of our Archives.php template will go below here --><br />
22
<br />
23
<br />
24
                          <!-- The main functions of our Archives.php template will go above here --><br />
25
<br />
26
			</div><!-- #content --><br />
27
		</div><!-- #primary --><br />
28
<br />
29
<?php get_footer(); ?>
30
</code>

Ahora tiene una plantilla de archivos vacíos. Es el momento de rellenarlo con algún contenido :)


Paso 3 llame a algunas funciones básicas de tu plantilla Archives.php

Más páginas de archivos mostrar un formulario de búsqueda, archivos mensuales y archivo de la categoría. Pueden ser añadidas a la plantilla archives.php usando las 3 funciones siguientes:

  • get_search_form();
  • wp_get_archives();
  • wp_list_categories();

Tu plantilla archives.php debería verse ahora de una forma similar a esto:

1
2
<?php<br />
3
/**<br />

4
 * Template Name: Archives Template<br />

5
 * Description: A Page Template that lets us created a dedicated Archives page<br />

6
 *<br />

7
 * @package WordPress<br />

8
 * @subpackage Twenty_Eleven<br />

9
 * @since Twenty Eleven 1.0<br />

10
 */<br />
11
<br />
12
get_header(); ?><br />
13
<br />
14
		<div id="primary"><br />
15
			<div id="content" role="main"><br />
16
                          <br />
17
		          <h1 class="entry-title"><?php the_title(); ?></h1><br />
18
                          <?php the_post(); the_content();  ?><br />
19
<br />
20
                          <!-- The main functions of our Archives.php template will go below here --><br />
21
<br />
22
                            <?php get_search_form(); ?><br />
23
		<br />
24
		            <h2>Archives by Month:</h2><br />
25
		            <ul><br />
26
			     <?php wp_get_archives(); ?><br />
27
		             </ul><br />
28
		<br />
29
			    <h2>Archives by Subject:</h2><br />
30
			    <ul><br />
31
			      <?php wp_list_categories(); ?><br />
32
		            </ul><br />
33
<br />
34
                          <!-- The main functions of our Archives.php template will go above here --><br />
35
<br />
36
			</div><!-- #content --><br />
37
		</div><!-- #primary --><br />
38
<br />
39
<?php get_footer(); ?>

Paso 4 Crear Una Página de Archivos

Ahora tu tema tiene una plantilla archives.php básica. Lo próximo que tienes que hacer es crear una nueva página en tu sitio web (por ejemplo, en https://www.tuweb.com/wp-admin/post-new.php?post_type=page). Puedes llamar a la página como quieras, por ejemplo, Archivos, Archivos del Sitio, Sitemap, etcétera.

Asegúrete de que cambiar la plantilla por defecto de la página por la plantilla de archivos que acabamos de crear.

Si has seguido este tutorial usando el tema Twenty Eleven, tu página de archivos debería mostrar algo así:


Paso Extra Personalizar Tu Página de Archivos

En el paso 3 hemos añadido un formulario de búsqueda, archivos mensuales y archivo de la categoría a nuestra página de archivos. Las funciones wp_get_archives y wp_list_categories que utilizamos son muy versátiles y pueden utilizarse para mostrar una amplia gama de las listas de archivo diferentes.

Otras dos funciones que pueden resultarte útiles son wp_list_pages y wp_tag_cloud.

A continuación encontrarás algunos ejemplos de los parámetros que se pueden pasar a todas estas funciones. Deberías encontrarlos útiles para personalizar aún más tu plantilla archives.php.

Ejemplos con wp_get_archives

1
2
<?php wp_get_archives('type=daily&limit=30'); ?>

Muestra las entradas o artículos de los últimos 30 días.

1
2
<?php wp_get_archives('type=postbypost&limit=20'); ?>

Muestra las últimas 20 entradas.

1
2
<?php wp_get_archives('type=weekly'); ?>

Muestra archivos semanales.

1
2
<?php wp_get_archives('type=weekly&limit=12'); ?>

Muestra 12 archivos de la semana.

Ten en cuenta que esto no necesariamente muestra una lista de las últimas 12 semanas en las que se publicaron entradas. Por ejemplo, podría listar las 12 últimas semanas en las que se publicaron entradas, de forma que, la lista podría retrotraerse años si tu blog no ha sido actualizado desde hace mucho.

1
2
<?php wp_get_archives('show_post_count=1'); ?>

Muestra archivos mensuales mostrando la cantidad de entradas del mes actual.

1
2
<?php wp_get_archives('type=yearly'); ?>

Muestra archivos anuales.

1
2
<?php wp_get_archives('type=alpha'); ?>

Muestra todas las entradas por orden alfabético.

1
2
<?php wp_get_archives('type=postbypost'); ?>

Muestra todas las entradas ordenadas por fecha. Las más recientes aparecen primero.

Ejemplos con wp_list_categories

1
2
<?php wp_get_archives('show_post_count=1'); ?>

Mostrar recuento de categorías.

1
2
<?php wp_list_categories('title_li=Info'); ?>

Cambiar el nombre del título de la lista de 'Categorías' a 'Información'.

1
2
<?php wp_list_categories('hide_empty=0'); ?>

Mostrar categorías vacías en la lista categoría.

1
2
<?php wp_list_categories('include=1,5'); ?>

Sólo muestra las categorías 1 y 5.

1
2
<?php wp_list_categories('exclude=2'); ?>

No muestra la categoría 2.

1
2
<?php wp_list_categories('depth=1'); ?>

Mostrar sólo categorías de nivel superior.

1
2
<?php wp_list_categories('depth=3'); ?>

Muestran tres niveles de categorías (es decir, la categoría superior, la categoría descendente en primer grado (hija) y la categoría descendente en segundo grado (hija de la primera hija de la categoría superior).

1
2
<?php wp_list_categories('child_of=3'); ?>

Sólo enseñarles el categorías de categoría 3

1
2
<?php wp_list_categories('title_li=News&include=4show_post_count=1'); ?>

Sólo muestra la categoría 4, muestra el número de entradas y cambia el título de la lista de 'Categorías' a 'Noticias'.

Ejemplos wp_get_archives 

1
2
<?php wp_list_pages(); ?>

Enumera todas las páginas y sub páginas.

1
2
<?php wp_list_pages('title_li='); ?>

Muestra todas las páginas y las sub-páginas pero sin título para la lista de sub-páginas.

1
2
<?php wp_list_pages('sort_column=post_date'); ?>

Ordena las páginas según la fecha de creación.

1
2
<?php wp_list_pages('sort_column=post_modified'); ?>

Ordenar páginas por la fecha que fueron modificada por última vez.

1
2
<?php wp_list_pages('include=2,4,6' ); ?>

Solo lista las páginas que usted especifique.

1
2
<?php wp_list_pages('exclude=1,9' ); ?>

Excluir ciertas páginas de la lista.

1
2
<?php wp_list_pages('depth=1' ); ?>

Muestra sólo las páginas de nivel superior.

1
2
<?php wp_list_pages('depth=2' ); ?>

Muestra páginas y el primer nivel de sub-páginas.

Ejemplos con wp_tag_cloud

1
2
<?php wp_tag_cloud(); ?>

Mostrar la nube de etiquetas en su totalidad.

1
2
<?php wp_tag_cloud('orderby=count'); ?>

Ordenar tu nube de etiquetas según su cantidad (de menor número de temas a las etiquetas con mayor número).

1
2
<?php wp_tag_cloud('smallest=15&largest=30'); ?>

Establecer los tamaños de texto más pequeños y más grandes para los valores del recuento  (8 es el tamaño predeterminado para el valor más pequeño y 22 para el mayor).

1
2
<?php $args = array('taxonomy'  => array('post_tag','category'), ); wp_tag_cloud($args); ?>

Mostrar una nube de etiquetas de las categorías y las etiquetas.


Conclusión

Al agregar una página de archivos a tu sitio de Internet estás ofreciendo a tus lectores y a los motores de búsqueda más formas de encontrar tu mejor contenido. Es una página fácil de configurar, y por eso es sorprendente que más temas no incluyan una plantilla de archivos.

Recuerda, que aunque hemos utilizado el tema Twenty Eleven predeterminado como ejemplo a lo largo de este tutorial, los pasos que hemos dado se pueden aplicar a cualquier tema actual de WordPress.

Buena suerte - Kevin