Icono del sitio Imacreste

Añadir menús, áreas de widgets y formatos de entrada a mi tema WordPress

Cuando creamos un tema con WordPress tenemos que desarrollar el diseño, separar el contenido en diferentes plantillas, y crear una estructura de navegación, además de un sistema de plantillas amplio y el fichero functions.php WordPress nos permite crear menús, widgets y formatos para que luego sean sencillos de usar en los temas por los usuarios.

Añadir menús en nuestro

WordPress nos permite definir y añadir menús en diferentes zonas de nuestro tema.

Si Internet es lo que es, es gracias a los menús, que nos permiten cambiar entre unas páginas y otras llegando al contenido que queremos. En este sentido, es importante hacer un estudio de la arquitectura de la información recomendado, es decir como buscan mis clientes mis productos / servicios, y como es más factible que me encuentren, y en base a ese conocimiento crear mi estructura basada en ese conocimiento.

Cuando hablamos de menús, nos referimos a todos, no solo el principal. Podemos tener menús por encima del principal, en un lateral o incluso en el footer.

En primer lugar debemos activar en el fichero functions.php la opción de menús:

if (function_exists('add_theme_support')){
add_theme_support('menus');
}

Y el siguiente paso es registrar los diferentes menús de nuestro tema:

register_nav_menus(
array(
'mi_menu_primary' => 'Menú principal',
'mi_menu_footer' => 'Menú footer',
));

En este ejemplo registramos 2 menús, que ya podremos ver en la sección de menús del administrador, y ya se podrán añadir páginas, entradas, categorías, enlaces externos, etc. Pero no veremos nada nuevo en la web, ya que falta activar los menús en los diferentes lugares.

<?php wp_nav_menu('theme_location','mi_menu_primary');?>

En este caso estamos indicando donde queremos que se muestre el menú primario, normalmente en el header ya que es un menú que queremos que se vea en toda nuestra web.

Creando áreas de widget

Un widget es un bloque en la que el usuario puede introducir diferentes contenidos mediante la sección widgets y la forma de crear un área de widget es parecida a los menús, en primer lugar debemos registrarlos desde functions.php.

register_sidebar( array(
'name' => __( 'Widget lateral', 'theme-slug' ),
'id' => 'sidebar-1',
'description' => __( 'Widget para el sidebar.', 'theme-slug' ),
'before_widget' => '<li id="%1$s" class="widget %2$s">',
'after_widget' => '</li>',
'before_title' => '<h2 class="widgettitle">',
'after_title' => '</h2>',
) );

Aunque se use la etiqueta register_sidebar, no tiene por qué situarse solo en los laterales, otro buen sitio para un widget suele ser el footer, para que en función del cliente puedan añadir una u otra información.

Y ahora solo queda que el usuario cargue sus Widgets en el nuevo bloque que ubicamos en una plantilla de la siguiente forma:

<?php dynamic_sidebar( 'sidebar-1' ); ?>

Formatos de entrada

Los formatos de entrada son una forma de personalizar las entradas, pudiendo macar cada entrada con un formato diferente. Por defecto WordPress viene con el formato estándar, pero podemos habilitar los siguientes formatos:

add_theme_support('post-formats',array('aside','gallery ','link','image','quote','status'
,'vídeo','chat','audio'));

En realidad es muy poco frecuente usar otro formato que no sea el estándar, pero podemos tener diferentes visualizaciones para por ejemplo: galerías, Vídeos, etc.

Salir de la versión móvil