Plantillas de Página
-
Upload
osmel-calderon-bernal -
Category
Documents
-
view
237 -
download
0
Transcript of Plantillas de Página
¿Qué es una Página?Los post son objetos orientados en el tiempo. Usted las escribe en un tiempo específico, y
aquel tiempo define su contexto.
Las Páginas, por el contrario, se usan la mayor parte de las veces para presentar la información
atemporal sobre usted o su sitio - información que siempre se puede aplicar. Por ejemplo, usted
podría escribir un post describiendo lo que hizo o pensó durante una mañana particular ("El
desayuno estaba bien"), pero en una Página usted podría escribir algo cuyo contexto no es
dependiente del tiempo ("Este sitio es sobre el desayuno").
Desde luego, esto es su WordPress; usted puede hacer lo que quiera con él y sus características.
Las Páginas pueden ser utilizadas para presentar cualquier información que usted quiera viva
"fuera" de su blog. Experimente y sea creativo. Y, como siempre, ¡diviértase haciéndolo!
Algunos ejemplos de Páginas para crear en su sitio pueden incluir Derechos de autor, Información Legal, Permisos de Reimpresión, Información de Contacto, Acerca de Mí, Acerca del Sitio, Declaración de Accesibilidad, entre otras cosas.
En general, las Páginas son muy similares a los post en tanto que ambas tienen Títulos y Contenido y pueden usar las Plantillas de Presentación de su sitio para mantener una apariencia constante en todas las partes de su sitio. Las páginas, sin embargo tienen varias distinciones clave que las hacen bastante diferentes de los post.
Las Páginas en Resumidas CuentasQué son Páginas
Las Páginas son para el contenido que es menos dependiente del tiempo que los post.
Las Páginas pueden organizarse en páginas y SubPáginas.
Las Páginas pueden usar diferentes Plantillas de Página que pueden incluir Archivos de
Plantilla, Etiquetas de Plantilla y otro código PHP.
Qué no son Páginas LasPáginas no son post, ni extractos de obras de ficción más grandes. No hacen el ciclo por la
página principal de su blog, tampoco pueden ser asociadas con Categorías.
Las Páginas no son archivos. Se almacenan en su base de datos como post que son.
Aunque usted pueda poner Etiquetas de Plantilla y código de PHP en una Plantilla de Página,
usted no puede poner estos en el contenido de una Página y esperar que funcione. (Nota:
puede conseguir esto usando una extensión (plugin) PHP como RunPHP. Vea también la lista
de Plugins para formatear Entradas.)
Creando PáginasPara crear una nueva Página, conéctese a su instalación WordPress con privilegios suficientes de
administrador para crear nuevos artículos, y pulse sobre la pestaña Escribir en el interfaz del
administrador, que a su vez tiene la pestaña Escribir Página. Haciendo click en Escribir
Página llegará a la página donde puede crear su nueva Página.
Nota: Su archivo .htaccess debe tener permiso de escritura para trabajar con Permalinks de
Página, si no es así debe actualizar su archivo .htaccess cada vez que crea usted una Página
nueva.
Listando sus Páginas en su SitioWordPress es capaz de generar automáticamente una lista de Páginas en su sitio, por ejemplo dentro de la barra lateral, usando una Etiqueta de Plantilla llamada wp_list_pages(). Por favor,
vea la documentación que describe el uso de esta etiqueta para informarse sobre como:
clasificar la lista de Páginas (para personalizar totalmente el orden en la cual las Páginas son
catalogadas, usted puede encontrar el campo para el "Orden de Página" en el panel de
administración de Escribir->Escribir Página useful),
excluir (o 'esconder') una Página de la lista, Visibilidad controlar que Páginas son mostradas (p.e. todas las Páginas o solamente ciertas Sub-
Páginas), y
controlar cómo va la lista en su jerarquía de Páginas (Superior).Naturalmente, usted también puede enlazar manualmente a Páginas con un enlace de HTML. Por
ejemplo, si usted quiere que el enlace a su Página de Derechos de Autor figure en su pie de
página, el enlace podría ser
<a title="Información sobre derechos de autor" href="wordpress/?page_id=14">Copyright 1996-2006</a>
si no tiene activada la opción de usar Permalinks, o
<a title="Información sobre derechos de autor" href="wordpress/copyright/">Copyright 1996-2006</a>
si tiene activada la opción de usar Permalinks.
Nota: Su archivo .htaccess debe tener permiso de escritura para que el Permalink de la Página
funcione, si no es así debe actualizar su archivo .htaccess cada vez que cree una Página.
Organizando sus PáginasTal como usted puede tener Subcategorías dentro de sus Categorías, usted también puede
tener Subpáginas dentro de sus Páginas, creando una jerarquía de páginas.
Por ejemplo, suponga que está creando un sitio de WordPress para un agente de viajes y gustaría
crear una Página individual para cada continente y país al cual la agencia puede ofrecer viajes.
Usted comenzaría por crear una Página llamada "África" sobre la cual usted podría describir la
información general sobre viajes a África. Después crea una serie de las Páginas que serían
Subpáginas de "África" y podrían incluir "Lesotho", "Camerún", "Togo", y "Swazilandia". Se hace
otra Página individual "Sudamérica" y crearía como Subpáginas "Brasil", "Argentina", y "Chile". Su
sitio entonces catalogaría:
Africa
Camerún
Lesotho
Swaziland
Togo
Sudamérica
Argentina
Brasil
Chile
Para comenzar el proceso, en el panel de Administration > Escribir > Escribir Página , en la
esquina superior derecha del panel, hay una caja desplegable llamada "Página Superior". Esto
contiene una lista de todas las Páginas ya creadas para su sitio. Para convertir su Página actual en
una Subpágina, o "hijo" de la Página "Superior" o "padre", seleccione la Página apropiada de la
lista desplegable. Si usted especifica una Página Superior de la lista diferente a la "Página Principal
(ninguna Página Superior)", la Página que usted está editando ahora se convierte en Subpágina de
la Página seleccionada. Cuando sus Páginas se listan, la Subpágina queda anidada cerca de la
Página Superior. Los Enlaces Permanentes (Permalinks) de sus Páginas reflejarán también esta jerarquía de Páginas.
En el ejemplo de arriba, el Permalink para la Página de Camerún sería:
http://ejemplo.com/africa/camerun/
Plantillas de PáginaLas Páginas Individuales pueden configurarse para usar una Plantilla de Página personalizada
específica, que usted crea dentro de su Tema. Esta nueva Plantilla de Página anulará la Plantilla de Página por defecto page.php incluida en su Tema. Mire ¿Qué Página se usa para mostrar una
Página en particular?, debajo, para averiguar exactamente que la Plantilla se usa. Pero lea primero lo que sigue, y así comprenderá la respuesta :)
WordPress puede configurarse para usar diferentes Plantillas de Página para diferentes Páginas. Hacia la parte inferior del panel de administración Escribir->Escribir Página hay un menu
llamado "Plantilla de la página". Desde allí usted puede seleccionar que la Plantilla será usada para
mostrar esta Página en particular. NOTA: Para tener acceso al selector de Plantilla de Página,
debe haber al menos una Plantilla de Página disponible en el tema activo.
Plantillas de Página del Tema DefaultEl tema Default contiene tres Plantillas de Página que puede emplear:
page.php - Plantilla de Página por defecto: muestra el contenido de la Página archives.php - Ignora el contenido de la Página y en su lugar muestra una lista de
Archivos por Meses y de Archivos por Asunto (Categorías) links.php - Ignora el contenido de la Página y en su lugar muestra sus enlaces
usando get_links_list
¿Qué Plantilla se usa para Mostrar una Página en Particular?WordPress buscará varios archivos de plantilla en su Tema activo. El primero que encuentre es el
que usará para mostrar cualquier Página dada. WordPress buscará los archivos por este orden:
1. La "Plantilla de Página" seleccionada para esta Página
2. page.php3. index.phpCreando sus propias Plantillas de PáginaLos archivos que definen cada Plantilla de Página se encuentran en su directorio de Temas. Para
crear una nueva Plantilla para una Página debe crear un archivo. Vamos a llamar nuestra primera Plantilla de Página snarfer.php para nuestra Página. En lo alto del archivo snarfer.php,
ponga lo siguiente:
<?php/*Template Name: Snarfer*/?>El código anterior define este archivo snarfer.php como la Plantilla "Snarfer". Naturalmente,
"Snarfer" puede ser substituido por cualquier otro texto para cambiar el nombre de la Plantilla de
Página. Este Nombre de Plantilla aparecerá en el Editor de Temas como enlace para editar este
archivo.
El archivo puede llamarse casi cualquier cosa con una extensión .php (ver nombres de archivos
reservados para el Tema para conocer los nombres de archivo que no debe usar; pues son
nombres de archivos especiales que WordPress se reserva para objetivos específicos).
Qué sigue a estas cinco líneas de código, depende de usted. El resto del código que escriba
controlará como se mostrarán las Páginas que usan la Plantilla de Página Snarfer. Ver
en Etiquetas de Plantilla las descripciones de funciones de varias Plantillas WordPress que puede
usar usted para este propósito. Usted puede encontrar más conveniente copiar alguna otra Plantilla (quizás page.php o index.php) en snarfer.php y luego añadir estas cinco líneas de código al principio del archivo. Así, usted sólo tendrá que cambiar el código HTML y PHP, en lugar de
crearlo todo desde el principio. Hay ejemplos abajo. Una vez que ha creado la Plantilla de Página y
la ha colocado en el directorio de su Tema, estará disponible como una opción cuando usted cree o
edite una Página.
==Ejemplos de Páginas y Plantillas==
Lo siguiente es una lista de ejemplos de instrucciones. Siéntase libre de hacer adiciones.
Archivos con ContenidoUna Plantilla de Página que muestra el contenido de la Página en lo alto, y luego muestra una lista
de archivos por meses y categorías debajo. Esto está diseñado para trabajar con el tema Default
de WordPress (aka Kubrick), pero probablemente trabajará con muchos otros temas modificándolo
un poco.
Guárdelo como arc-cont.php:
<?php/*Template Name: Archivos con Contenido*/?>
<?php get_header(); ?>
<div id="content" class="widecolumn">
<?php if (have_posts()) : while (have_posts()) : the_post();?> <div class="post"> <h2 id="post-<?php the_ID(); ?>"><?php the_title();?></h2> <div class="entrytext"> <?php the_content('<p class="serif">Leer el resto de esta página »</p>'); ?> </div> </div> <?php endwhile; endif; ?> <?php edit_post_link('Editar esta entrada.', '<p>', '</p>'); ?>
</div><div id="main">
<?php include (TEMPLATEPATH . '/searchform.php'); ?>
<h2>Archivos por Meses:</h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul>
<h2>Archivos por Categorías:</h2> <ul> <?php wp_list_cats(); ?> </ul>
</div><?php get_footer(); ?>
WordPress como CMSCon la nueva opción de Páginas desde la versión 1.5 es fácil usar WordPress para la gestión de
contenido básico.
Usando una Página como Página Principal
Usando el Static Front Page Plugin, es posible configurar cualquier Página como "página principal"
de tu sitio web. El plugin modifica la consulta de la página inicial y coloca la Página bajo la etiqueta
"Inicio" o "Home" en la página incial del site.
Cuando la Página está siendo mostrada como la Página Principal, si una Página de Plantilla con el nombre home.php existe para su Tema activo, el plugin anulará la Página establecida como
Página de Plantilla y usará home.php en su lugar. The Page's set Page Template will still apply if
the Page is visited like a standard Page (eg http://example.com/home/)
Como una alternativa al plugin, WordPress reconocerá un documento "home.php" en su directorio
de plantilla y la usará de preferencia sobre index.html para tema de su página frontal. Usando
los query_posts() plantillas de etiquetas, usted puede llamar sobre alguna página antes de ser
invocada The Loop. For instance:
<?php query_posts('pagename=home'); ?>Llamará solo el post con el nombre de página "home." Ver query_posts() para más ejemplos de las
plantillas de etiquetas en acción.
Incluyendo una PageUsted podría también necesitar incluir Página en varios lugares en su sitio. De esta manera, usted
puede tener una fácil manera para editar elementos de su sitio web. Existe un plugin llamado
Include Page que hace esto fácilmente. Improved Include Page es una versión actualizada del
pulgin.
Haciendo que su blog aparezca en un directorio no raizSuponga que tiene Wordpress corriendo en http://example.com/. Suponga también que necesita
alojar su blog enhttp://example.com/blog/ y que necesita otras páginas esten disponibles
en http://example.com/page1/.
La primera cosa que necesitaría es hacer crear una home page home page. usted puede hacer
esto creando home.php en su directorio del Tema. Luego, crear una plantilla de blog. La manera
más fácil para hacer esto es crear un archivo llamado blog.php con el siguiente contenido en su
directorio de temas:
<?php/*Template Name: Blog
*/?>
<?php query_posts('cat=-0'); //gets all posts load_template( TEMPLATEPATH . '/index.php'); //loads index ?>Registra dentro de Wordpress y crea una página llamada "Blog" con plantilla "blog". Usted está
listo. La última cosa que necesitará hacer es actualizar sus estructura de permalinks para iniciar
con "/blog/", por ejemplo, "/blog/%year%/%monthnum%/%postname%/". Ahora usted tiene un
Wordpress-managed CMS con una única frontal y lógicamente estructurado el contenido del blog.
A Note on NomenclatureUna página web puede ser estática o dinámica. páginas estáticas, tales como una página HTML
normal que usted puede crear con Dreamweaver, son los que se han creado de una vez y no tiene
que ser regenerado cada vez que una persona visita la página. Por el contrario, las páginas
dinámicas, como las que se crea con WordPress, tienen que ser regenerado cada vez que se
ven; código para lo que para generar en la página ha sido especificada por el autor, pero no la
página en sí. Estos utilizan extensa código PHP que se evalúa cada vez que la página es visitada,
y el contenido se generan así en cada nueva visita.
Casi todo en WordPress se genera dinámicamente, incluyendo las páginas. Todo lo publicado en
WordPress (Mensajes, páginas, comentarios, Blogrolls, Categorías, etc ...) se almacena en la base
de datos MySQL. Cuando se accede al sitio, la información de base de datos es utilizada por sus Plantillas WordPress desde su actual theme para generar la página web que se solicita.
Un ejemplo de una página estática podría ser un documento HTML (sin ningún código PHP ). El
problema con las páginas puramente estáticas es que son difíciles de mantener. Los cambios que se realizan en la configuración de WordPress, Temas y plantillas no se propagarán a las páginas codificadas sólo en HTML. La función de página de WordPress fue desarrollada para aliviar este problema. Mediante el uso de las páginas, usted ya no tendrá que actualizar sus
páginas estáticas cada vez que cambie el estilo de su sitio. Si ha escrito correctamente, las
páginas dinámicas se actualizarán junto con el resto de tu blog.
A pesar de la naturaleza dinámica de páginas, muchas personas se refieren a ellas como
estática. Ellas en realidad se llaman páginas web "pseudo-estática". En otras palabras, una página
contiene información estática, pero se genera dinámicamente. Por lo tanto, ya sea "estática",
"dinámica" o "pseudo-estática" se pueden usar válidamente para describir la naturaleza de la
función de página de WordPress.
Plantillas de página(Page Templates)
Páginas son uno de los tipos de POST incorporados en WordPress. Usted probablemente querrá la
mayor parte de su sitio mirar Páginas web. A veces, sin embargo, es posible que tenga una página
específica, o un grupo de páginas, para que aparezca o se comportan de manera diferente. Esto se
logra fácilmente con plantillas de página (Page Templates).
Contenido
[ ocultar ]
1 Selección de una plantilla de página
2 Creación de una plantilla de página
2.1 Condicionales Etiquetas
2.2 Especializada Plantilla de Página
2.3 Plantilla de página personalizada
2.3.1 Los nombres de archivo
2.3.2 Archivo de carpetas
3 ¿Cuál Página Gets Qué plantilla?
3.1 Terminología Plantilla
3.2 Jerarquía Plantilla
4 Ejemplos
4.1 Archivos con contenido
4.2 Una Página de Mensajes
4.3 Ejemplo de uso de campos personalizados
4.4 Ejemplo de uso personalizado de Correos Tipos
5 La identificación de una plantilla de página
6 Funciones de plantilla de página
Selección una plantilla de página
Sus archivos de temas deben incluir una plantilla de página por defecto (llamado: page.php ). El
tema también puede tener una o más plantillas de página personalizados, por ejemplo, para
mostrar el contenido en columnas más anchas. O usted puede haber creado una plantilla
personalizada por su cuenta.
Editar página en la pantalla: Puede asignar una plantilla personalizada para cualquier página
individual utilizando el desplegable de Plantilla en la pantalla Editar página (parte de el modulo
Atributos de página):
1. Seleccione una plantilla de la lista (por ejemplo, Mi página personalizada).
2. Haga clic en la actualización de botón (o Guardar borrador si aún no publica).
Todas las páginas de la pantalla: La edición rápida y opciones de edición masiva en la pantalla
Todas las páginas también tienen menús desplegables de plantilla.
Lista de plantillas sólo mostrará si:
Hay por lo menos un archivo de plantilla de página personalizada en su carpeta de tema
activo. Si cambia de tema, las plantillas de página en su tema activado previamente no se
mostrarán.
Usted está viendo una pantalla para editar una página: plantillas de página no son una opción
por defecto para post o tipos de post personalizado.
Creación de una plantilla de páginaWordPress ofrece varias maneras de mostrar las páginas. Todos ellos implican la edición o adición
de archivos en su carpeta de Tema activo. Si su tema activo no es el que usted ha diseñado usted
mismo, use un tema menor para hacer los cambios. De lo contrario, los cambios se sobrescribirán
cuando el tema se actualiza a una nueva versión.
Condicionales EtiquetasEdite su plantilla predeterminada: A menudo se puede hacer Páginas específicando cambios más pequeños con Etiquetas condicionales en su Tema en el archivo page.php. Por ejemplo,
este archivo de cabecera carga el código (header-home.php) para su página front(1ra pagina),
otro para su página Acerca( header-about.php), y el valor predeterminado header.php para
todas las demás páginas:
if ( is_front_page() ) { get_header( 'home' );} elseif ( is_page( 'About' ) ) { get_header( 'about' );} else { get_header();}
Plantilla de Página especializadaCrear una plantilla para una página: Para cambios más extensos, destinados a una sola página
específica, puede crear un archivo de plantilla especializado, llamado con el slug o ID de esa
página:
1. page-{slug}.php
2. page-{ID}.php
Por ejemplo: Su página About tiene un slug "about" y un id 6 . Si la carpeta de su tema activo
tiene un archivo llamado page-about.php o página-6.php , entonces WordPress encontrara
automáticamente el archivo para representar la página “about”.
Para ser utilizado, las plantillas de páginas especializadas deben estar en la carpeta de su tema
activo:
/wp-content/themes/my-theme/
Un archivo de plantilla de página especializada no puede estar en una subcarpeta, ni, si se utiliza
un Child Theme, en la carpeta de su tema padre.
Plantilla de página personalizadaCrear una plantilla que puede ser utilizada por cualquiera página: Una plantilla de página
personalizada se puede utilizar para múltiples páginas (véase Selección de una plantilla de
página anterior). Para crear una plantilla de página personalizada hacemos un nuevo archivo a
partir de un nombre de la plantilla dentro de un comentario PHP. Ésta es la sintaxis:
<?php/*Template Name: My Custom Page*/ Una vez que subimos el archivo a la carpeta de nuestro tema, el nombre de la plantilla, "Mi página
personalizado", aparecerá una lista desplegable en la plantilla de la pantalla Editar página. (La lista
de selección tiene un ancho máximo de 250px, así que nombres más largos se pueden cortar.)
Un método rápido y seguro para hacer una nueva plantilla de página es usando una copia de nuestro page.php : De esta manera usted comienza con la estructura HTML de sus otras páginas,
entonces usted puede editar según sea necesario.
Un archivo de plantilla de página personalizada puede estar en una subcarpeta, o, si está usando
un tema hijo, en la carpeta de su tema padre.
Los nombres de archivo
El nombre de su archivo de plantilla para que pueda ser identificado fácilmente su nombre de plantilla, por ejemplo, nombre de archivo my-custom-page.php por nombre de la plantilla "Mi
página personalizado". Algún grupo codificadores de sus plantillas con un prefijo de nombre de archivo, como page_my-custom-page.php (No utilice page- como prefijo de WordPress
interpretará el archivo como una plantilla de página especializada .)
Para obtener información sobre convenios de denominación de archivos de theme y nombres de
archivo que no se pueden usar, consulte los nombres de archivo de theme reservados .
Archivo de carpetas
Para ser utilizado, un archivo de plantilla de página personalizada debe ser almacenado (ver FTP )
en la carpeta de su tema activo, o carpeta de su Tema Padres, o una subcarpeta dentro de
cualquiera de ellos (desde 3.4.0). WordPress encuentra plantillas de página personalizados en
todas estas ubicaciones:
/wp-content/themes/my-theme//wp-content/themes/my-theme/my-templates
/wp-content/themes/my-child-theme/wp-content/themes/my-child-theme/my-templates/wp-content/themes/my-parent-theme/wp-content/themes/my-parent-theme/my-templates
Para que un archivo sea reconocido como una plantilla de página personalizada, debe comenzar
con la cadena "Template Name:" en un comentario. Después de que usted puede agregar otra
información, como:
<?php/* * Template Name: My Custom Page * Description: A Page Template with a darker design. */
// Code to display Page goes here...El articulo Template Tags describe las funciones de muchas plantillas incorporadas en WordPress
que pueden utilizar para la visualización de la página.
¿Cuál Página Gets Qué plantilla?Terminología PlantillaEl término "template" tiene varios usos relacionados en WordPress:
templates son los archivos de un tema de WordPress que determinan cómo su sitio se muestra.
Template Tags están incorporados en las funciones de WordPress que se puede utilizar dentro
de un archivo de plantilla para mostrar, o recuperar, los datos (the_title() and the_content()).
Template Hierarchy es la lógica de WordPress utilizada para decidir qué archivo(s) temáticos de
plantilla se va a utilizar, dependiendo de la solicitud, por ejemplo, la URL de un enlace user-
clicked
Jerarquía Plantilla
Cuando un usuario solicita una página específica, el código del núcleo de WordPress tiene la lógica
que decide qué tema de plantilla va utilizar para la renderizacion de esa página. La imagen de
arriba, es el Diagramas lógico de la Jerarquía de Plantillas:
1. Plantilla Personalizada - Si la página tiene una plantilla personalizada asignada,
WordPress busca ese archivo y, si lo encuentra, lo utiliza.2. page-{slug}.php – sino WordPress busca y, si no lo encuentra, utiliza una plantilla
especializada llamada con el slug de la página.3. page-{id}.php - sino WordPress busca y, si no lo encuentra, utiliza una plantilla
especializada llamada con el id de la página.4. page.php – sino WordPress busca y, si no lo encuentra, utiliza la plantilla de página
por omisión del tema.5. index.php - sino WordPress utiliza el archivo de índice del Tema.
(Nota: También hay una plantilla de WordPress-definido llamada paged.php. no se utiliza para las
página de tipo de post, sino más bien para la visualización de multiples páginas de archivos.)
EjemplosLos siguientes son ejemplos de instrucción de los archivos de plantilla de página
personalizado. Nota: estructura de archivo de plantilla de tu WordPress Tema y estructura de
HTML pueden ser diferentes.
Archivos con contenidoEste ejemplo de una plantilla de página muestra el contenido de la página en la parte superior, a
continuación, una lista de archivos (por mes), luego las categorías del sitio por debajo de eso.
Guardar este a arc-cont.php:
<?php/*Template Name: Archives with Content*/
get_header(); ?><div id="content" class="widecolumn"> <?php if (have_posts()) : while (have_posts()) : the_post();?> <div class="post"> <h2 id="post-<?php the_ID(); ?>"><?php the_title();?></h2> <div class="entrytext"> <?php the_content('<p class="serif">Read the rest of this page »</p>'); ?>
</div> </div> <?php endwhile; endif; ?><?php edit_post_link('Edit this entry.', '<p>', '</p>'); ?></div>
<div id="main"> <?php get_search_form(); ?> <h2>Archives by Month:</h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul> <h2>Archives by Subject:</h2> <ul> <?php wp_list_categories(); ?> </ul></div><?php get_footer(); ?>
Una Página de MensajesEl siguiente archivo de plantilla de página personalizada muestra el contenido de la página,
seguido por el post de dos categorías específicas (especificados por sus categoría slugs). Está
diseñado para trabajar dentro de un tema hijo del tema Twenty Thirteen. Si usted está usando un
tema diferente, necesita para replicar la estructura HTML de tu propio tema dentro de esta plantilla.
Guardar este a pageofposts.php y luego asignar la Página de post template para su nueva
Página:
<? Php<?php/*Template Name: Page Of Posts*/
/* This example is for a child theme of Twenty Thirteen: * You'll need to adapt it the HTML structure of your own theme.*/
get_header(); ?>
<div id="primary" class="content-area"><div id="content" class="site-content" role="main">
<?php /* The loop: the_post retrieves the content * of the new Page you created to list the posts,
* e.g., an intro describing the posts shown listed on this Page.. */ if ( have_posts() ) : while ( have_posts() ) : the_post();
// Display content of page get_template_part( 'content', get_post_format() ); wp_reset_postdata(); endwhile; endif;
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args = array( // Change these category SLUGS to suit your use. 'category_name' => 'music, videos', 'paged' => $paged );
$list_of_posts = new WP_Query( $args ); ?> <?php if ( $list_of_posts->have_posts() ) : ?>
<?php /* The loop */ ?><?php while ( $list_of_posts->have_posts() ) : $list_of_posts->the_post(); ?
><?php // Display content of posts ?><?php get_template_part( 'content', get_post_format() ); ?>
<?php endwhile; ?>
<?php twentythirteen_paging_nav(); ?>
<?php else : ?><?php get_template_part( 'content', 'none' ); ?>
<?php endif; ?>
</div><!-- #content --></div><!-- #primary -->
<?php get_footer(); ?> Ejemplo de uso de campos personalizadosEste ejemplo Plantilla de Página muestra mensajes de una categoría específica en función de
un campo personalizado asignado a una página. El valor del campo personalizado "categoría" se
recupera y se utiliza como categoría para recuperar los mensajes de esa categoría. Si la categoría
de mensajes que desea mostrar se llama "Eventos" y luego asignar el campo personalizado
"categoría" con un valor de "Eventos" de la página. Tenga en cuenta que esta se adhiera a las
reglas de paginación lo que significa que cuatro (4) los mensajes se mostrarán por página con
enlaces a mayores puestos / nuevas previstas.
Guardar este a pageofposts.php y luego asignar la Página de Mensajes plantilla al crear la
acción de la página:
This Page Template example displays posts from a specific category depending on a Custom
Field assigned to a Page. The value of the Custom Field "category" is retrieved and used as the
category to retrieve the posts in that category. If the category of posts you want to display is called
"Events" then assign the Custom Field "category" with a value of "Events" to the Page. Note that
this will adhere to pagination rules meaning that four (4) posts will display per page with links to
older/newer posts provided.
Save this to pageofposts.php and then assign the Page of Posts Template when creating the
action Page:
<?php/*Template Name: Page Of Posts with Custom Fields*/
get_header(); ?><div id="content" class="narrowcolumn"><?phpif ( is_page() ) { $category = get_post_meta( $posts[0]->ID, 'category', true ); $cat = get_cat_ID( $category );}if ( $cat ) : $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1; $post_per_page = 4; // -1 shows all posts $do_not_show_stickies = 1; // 0 to show stickies $args=array ( 'category__in' => array( $cat ), 'orderby' => 'date', 'order' => 'DESC', 'paged' => $paged, 'posts_per_page' => $post_per_page, 'ignore_sticky_posts' => $do_not_show_stickies ); $temp = $wp_query; // assign original query to temp variable for later use global $wp_query; $wp_query = null; $wp_query = new WP_Query( $args );
if ( $wp_query->have_posts() ) : while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?> <div <?php post_class() ?> id="post-<?php the_ID(); ?>"> <h2><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2> <small><?php the_time( 'F jS, Y' ) ?> <!-- by <?php the_author() ?> --></small> <div class="entry"> <?php the_content( 'Read the rest of this entry »' ); ?> </div> <p class="postmetadata"><?php the_tags( 'Tags: ', ', ', '<br />' ); ?> Posted in <?php the_category( ', ' ) ?> | <?php edit_post_link( 'Edit', '', ' | ' ); ?> <?php comments_popup_link( 'No Comments »', '1 Comment »', '% Comments »' ); ?></p> </div> <?php endwhile; ?> <div class="navigation"> <div class="alignleft"><?php next_posts_link( '« Older Entries' ) ?></div> <div class="alignright"><?php previous_posts_link( 'Newer Entries »' ) ?></div> </div> <?php endif; // if ( $wp_query->have_posts() ) ?>
<?php $wp_query = $temp; //reset back to original query ?>
<?php else : ?> <h2 class="center">Not Found</h2> <p class="center">Sorry, but you are looking for something that isn't here.</p> <?php get_search_form(); ?> <?php endif; // if ( $cat ) ?>
</div><!-- #content --><?php get_sidebar(); ?><?php get_footer(); ?> Ejemplo de uso de Tipos de post personalizadoCustom Post Types permiten sitios de WordPress para mostrar diferentes tipos de contenido. Este
ejemplo muestra los mensajes en una página que pertenece a un tipo de mensaje
personalizado. En este caso, el tipo de mensaje personalizado es libro. La plantilla de pagina
personalizado abajo puede trabajar en cualquier Tema o como un archivo de plantilla de tema hijo.
<?php/** * Template Name: Page of Books * * Print posts of a Custom Post Type. */
get_header(); ?> <div id="container"> <div id="content"> <?php $type = 'book'; $args = array ( 'post_type' => $type, 'post_status' => 'publish', 'paged' => $paged, 'posts_per_page' => 2, 'ignore_sticky_posts'=> 1 ); $temp = $wp_query; // assign ordinal query to temp variable for later use $wp_query = null; $wp_query = new WP_Query($args); if ( $wp_query->have_posts() ) : while ( $wp_query->have_posts() ) : $wp_query->the_post(); echo '<h2>'; the_title(); echo '</h2>'; echo '<div class="entry-content">'; the_content(); echo '</div>'; endwhile; else : echo '<h2>Not Found</h2>'; get_search_form(); endif; $wp_query = $temp; ?> </div><!-- #content --> </div><!-- #container --><?php get_sidebar(); ?><?php get_footer(); ?>
La identificación de una plantilla de páginaSi tu plantilla utiliza la función body_class, WordPress imprimirá la clases en la etiqueta <body>
para el tipo de post (class name: page), de la página de ID (page-id-{ID}), y la plantilla de
página utilizada. Por defecto page.php el nombre de la clase es page-template-default , por
ejemplo:
<body class="page page-id-6 page-template-default">
Nota: una plantilla especializada (page-{slug}.php or page-{ID}.php) también consigue
la clase page-template-default - no su propia clase de cuerpo.
Cuando se utiliza una plantilla de página personalizada, la clase page-template se imprimirá,
junto con una clase nombrar la plantilla específica, por ejemplo:
<body class="page page-id-6 page-template page-template-my-custom-page-php">
Funciones Plantilla de PáginaEstas funciones y métodos de WordPress integrados pueden ayudarle a trabajar con plantillas de
página:
get_page_template () devuelve la ruta de la plantilla de página que se utiliza para renderizar la
página.
wp_get_theme()->get_page_templates() devuelve todas las plantillas de página personalizados
disponibles con el tema actualmente activo (get_page_templates () es un método de la clase
WP_Theme).
is_page_template() devuelve true o false dependiendo de si se utiliza una plantilla de página
personalizada para representar la página.
get_page_template_slug () devuelve el valor del campo personalizado '_wp_page_template' ( null cuando el valor está empty o 'default').
El nombre del archivo de plantilla personalizada asignada a una página se almacena como el valor de un campo personalizado llamado '_wp_page_template' (en la tabla de base de datos
wp_postmeta). (Los campos personalizados a partir de un guión no se muestran en el módulo de
campos personalizados de la pantalla de edición.)
Creating a Static Front Page
Contents
[hide]
1 WordPress Static Front Page Process
2 Creating a Static Front Page
3 Theme Development for Custom Front Page Templates
3.1 Theme Template Files
3.1.1 Custom Site Front Page Template
3.1.2 Custom Blog Posts Index Page Template
3.2 Contextual Conditional Tags
3.3 Configuration of front-page.php
3.3.1 Conditional display within front-page.php
3.3.2 Filtering front_page_template
3.4 Adding custom query loops to front-page.php
3.5 Pagination
4 Resources
Por defecto, WordPress muestra sus más recientes post en orden cronológico inverso, en la
página principal de su sitio. Muchos usuarios de WordPress quieren una portada o página de bienvenida estática(static front page or splash page) como la primera página en su lugar. Esta
"primera página estática" look es común que los usuarios deseen información estática o
acogedores en la página principal del sitio.
El aspecto de la página principal del sitio se basa en las elecciones del usuario combinadas con las
características y opciones del tema de WordPress.
Hay cuatro modelos para diseño y estructura de WordPress, tres de ellos que incluyen páginas
principales estáticas.
1. Blog: Este es el formato de la page principal tradicional con los características de los post que
aparecen en orden cronológicamente inverso.
2. Static Front Page: Se trata de un modelo de sitio HTML estático tradicional con una pagina
principal fija y contenido colocado en páginas, rara vez usan post, categorías o etiquetas.
3. Static Front Page Plus Blog: Esta característica de modelo cuenta con una página estática
como una introducción o bienvenida además de un blog para gestionar los posts. Páginas que
pueden ser usadas para proporcionar el contenido atemporal como Contacto, About, etc
4. Dynamic Front Page: A veces llamado modelo integrado, las características de diseño de
sitio dinámico es similar a Static Front Page Plus Blog, sin embargo, la primera página es
dinámica. Se puede presentar una combinación de contenido estático y blog (Página y
post). El tema “Twenty-Eleven WordPress” ofrece esa característica como un ejemplo, con su
plantilla de página Showcase. Cuenta con el más reciente post en extracto o completo seguido
por los próximos posts más recientes como títulos de las entradas. Hay una opción para
agregar un slider para posts destacados establecidos como Sticky post por encima de la
primera entrada, creando una mezcla dinámica de contenido en la página principal.
No importa cual estructura de diseño elijas, el proceso de creación de la primera página estática en
WordPress es básicamente el mismo.
WordPress Static Front Page ProcessHay dos pasos fundamentales para la creación de una primera página estática en su sitio con
WordPress.
1. Asignar la Página principal
2. Asignar los POST de Página (página blog)
La página asignada como la página principal del sitio mostrará la información estática que se desea
que los lectores conozcan. Puede ser personalizado para personas directamente para darle su
bienvenida u ofrecer instrucciones, caracterizar los contenido, resaltar los post específicos,
artículos, categorías o contribuyentes.
La página asignada como la página del blog (página posts) del sitio muestra los post en orden
cronológicamente inverso. POSTS establecidos como Posts Sticky se adhieren a la parte superior
de la cola, y la navegación y la organización del contenido de los post es a través de categorías y
etiquetas.
Algunos Temas WordPress ofrecen configuración o las opciones especiales incluyendo
características de tipos para "la pagina principal" de la plantillas de paginas personalizadas. En
este artículo se describe la forma estandarizada de crear paginas principales estáticas. Consulte la
documentación de su tema de WordPress para obtener detalles específicos.
Creating a Static Front PageCreación de una pagina principal estática virtual no requiere edición o codificación de archivos o
plantillas. Usando la configuración por defecto para una "página principal estática" en WordPress
no elimina el sidebar o cambio del aspecto de todo el sitio, sólo el área de contenido.
Tenga en cuenta que los nombres de las páginas utilizadas en estos ejemplos son nombres
estandarizados web. Usted puede elegir títulos alternativos.
Para crear la primera página estática, ir a la Administration Panels de WordPress .
1. Create a Front Page: In Pages choose Add New Page.
Title it "Home".
1. If the WordPress Theme offers an option to change the look and feel of the front page,
select the Template in the Page Attributes panel box.
2. Add content you would like to see within the content area of the static front page, or leave
it blank if it is a Dynamic front page.
3. Publish the Page.
2. Create a Blog Page: If choosing to add a blog, choose Add New Page again.
Title it "Blog," "News," "Articles," or an appropriate name.
1. Do not use a custom Page template for this page. The template files home.php or index.php will be used to generate this page in the Theme.
2. DO NOT add content. Leave it blank. Any content here will be ignored -- only the Title is
used.
3. Publish the Page.
Reading panel
3. Go to Administration > Settings > Reading panel. Set Front page displays to a static page
1. In the drop down menu for Front Page select "Home."
2. In the drop down menu for Posts page select "Blog" or the name you created, or leave it
blank if you will not feature posts on the site.
3. Save changes.
Mientras que estamos llamando a esto una "página principal estática", es posible editar el
contenido de esa página web en cualquier momento mediante la edición de la Página "Home".
Tema Desarrollado para personalizar plantilla de Página principalFichero de plantilla de Tema.El desarrollo de los archivos de plantilla de tema que incorporan la función de pagina principal
estática requiere comprensión de la Jerarquía de Plantilla WordPress.
En la primera página web, WordPress siempre utilizará el archivo de plantilla front-page.php, si
existe. Si front-page.php no existe, WordPress determinará qué plantilla del archivo va ha
utilizar, dependiendo de la configuración de usuario de ' Ajustes > Lectura -> Página de la pantalla
principal', de la siguiente manera:
Una página estática: WordPress utiliza la jerarquía de plantilla de Página statica : Plantilla de página personalizada , page-{id}.php , page-{slug}.Php, page.php , index.php
Sus últimos posts: WordPress utiliza la Blog Posts Index jerarquía de plantilla: home.php , index.php
Personalizar plantilla de página principal del sitio
Para crear una personalización de plantilla de página principal del sitio, incluir cualquiera de los
siguientes en el tema:
front-page.php
Una plantilla de página personalizada (por ejemplo, template-featured.php de contenido
destacado)
Personalizar plantilla de índice de entradas de blog “Blog Posts Index Page Template”
Para crear una plantilla personalizada de índice de entradas de blog, incluir lo siguiente en el tema:
home.php
Utilice sólo el fichero de plantilla home.php para el índice de los post del blog. No utilice una
plantilla de página personalizada (como template-blog.php) por dos razones:
1. Cuando la característica de pagina principal estática está configurado correctamente,
WordPress no va a utilizar una plantilla de página personalizada para mostrar el índice de
post del blog, incluso si una plantilla de página personalizada se asigna a la página designada como la "página de POSTS". WordPress sólo utiliza home.php o index.php .
2. Cuando la plantilla de página personalizada se asigna a una página estática que no sea la
designada como la "página de posts," el loop de la paginación de índice de posts del blog
no funcionará correctamente.
Contextual Conditional Tagsis_front_page()
This Conditional Tag checks if the site front page is being displayed. Returns true when the
site front page is being displayed, regardless of whether 'Settings > Reading ->Front page
displays' is set to "Your latest posts" or "A static page".
is_home()
This Conditional Tag checks if the blog posts index is being displayed. Returns true when
the blog posts index is being displayed: when the site front page is being displayed and
'Settings > Reading ->Front page displays' is set to "Your latest posts", or when
'Settings > Reading ->Front page displays' is set to "A static page" and the "Posts Page"
value is the current Page being displayed.
Cuando se está mostrando la primera página web y ' Ajustes > Lectura -> página principal" se establece en" Sus últimos posts", tanto is_front_page() y is_home() devolverán true.
Configuration of front-page.phpSi existe, el archivo de plantilla front-page.php se utiliza en la primera página del sitio,
independientemente de si ' Ajustes >Lectura -> página principal" se ajusta en "Una página estática
" o "Sus últimas post” , "el tema necesitara dar cuenta de las dos opciones, de modo que la primera
página web mostrará ya sea una página estática o el índice de entradas de blog. Hay algunos
métodos para hacerlo.
MostrandoConditional en front-page.php
Una forma de permitir front-page.php para dar cuenta de las dos opciones para
'Ajustes > Lectura -> página principal 'es añadir un interior condicional de front-page.php,
utilizando get_option( 'show_on_front' ), get_home_template(),
and get_page_template().
Method 1: Incluyendo contenido personalizado directamente en front-page.php:
if ( 'posts' == get_option( 'show_on_front' ) ) { include( get_home_template() );} else { // Custom content markup goes here}Method 2: Incluyendo algunas plantillas de pagina:
if ( 'posts' == get_option( 'show_on_front' ) ) { include( get_home_template() );} else { include( get_page_template() );}Filtrando front_page_template
Otra forma de permitir que la pagina principal del sitio sea mostrada ya sea como una página
estatica / o como contenido personalizado o el índice de post del blog, sin añadir código condicional dentro de front-page.php , es filtrar front_page_template , mediante la adición
de un callback de filtro para functions.php :
function themeslug_filter_front_page_template( $template ) { return is_home() ? '' : $template;}add_filter( 'front_page_template', 'themeslug_filter_front_page_template' );Este método hace que WordPress se desvíe del archivo de plantilla front-page.php por
completo cuando se muestra el índice de entradas del blog.
Añadiendo consultas personalizadas para front-page.phpSi el fichero de plantilla front-page.php incluye por defecto a WordPress Loop, se veria asi:
<?phpif ( have_posts() ) : while ( have_posts() ) : the_post(); // do somethingendwhile; else: // no posts foundendif;Ese loop se aplica al contenido del post de la pagina estatica asignada a 'Settings > Reading -
>Posts page'.
Para mostrar el loop personalizado (últimos post del blog, personalizando/contenido caracterizado,
etc), agregar loop secundario usando consultas de llamadas a WP_Query . Por ejemplo, para
mostrar los 3 últimas entradas en el blog:
$latest_blog_posts = new WP_Query( array( 'posts_per_page' => 3 ) );
if ( $latest_blog_posts->have_posts() ) : while ( $latest_blog_posts->have_posts() ) : $latest_blog_posts->the_post(); // Loop output goes hereendwhile; endif;PaginationPrimeras páginas estáticas no están destinadas a ser paginada. Ninguno de las funciones de WordPress anterior / siguiente enlace de las páginas trabajan con una pagina principal
estática. Paginación en una página principal estática utilizan la variable de consula page, no la
variable paged. Ver el WP_Query para más detalles.