Cómo especificar la "Barra lateral principal" para un tema

12 oct 2012, 19:36:48
Vistas: 78
Votos: 1

Cuando instalo y activo mi tema, coloca todos los widgets de la barra lateral por defecto en la primera barra lateral de widgets que aparece en la parte superior de la colección de widgets de mi tema.

Sin embargo, dado que esa área de widgets es un widget de encabezado, esos elementos distorsionan la vista predeterminada de mi tema cuando se activa por primera vez (el área del encabezado se estira demasiado para acomodar todos esos widgets).

Creo que esto está sucediendo porque el widget del encabezado resulta ser la primera barra lateral que registro en functions.php

¿Hay alguna manera, además de reorganizar el orden de mis widgets de la barra lateral, para especificar en qué barra lateral se colocan los widgets por defecto?

Entiendo que puedo reorganizar el orden en el que registro las barras laterales y los widgets de la barra lateral por defecto se colocarán en la primera. Sin embargo, en mi caso, quiero que mi barra lateral "header" aparezca primero para que refleje con precisión el orden de diseño de arriba hacia abajo de las áreas reales de widgets. Pero no quiero que las barras laterales por defecto se coloquen en la barra lateral "header". Quiero que se coloquen en la barra lateral "Sidebar" (la segunda registrada como se puede ver en el código a continuación)

/* BARRAS LATERALES
*******************************/

register_sidebar(array(
    'name' => 'Encabezado',
    'id' => 'home-header-widget',
    'before_widget' => '<div class="featured-home %2$s">',
    'after_widget' => '</div>',
    'before_title' => '<span class="featured-title">',
    'after_title' => '</span>',
));

register_sidebar(array(
    'name' => 'Barra lateral',
    'id' => 'home-sidebar-widget',
    'before_widget' => '<div class="menu side %2$s">',
    'after_widget' => '</div>',
    'before_title' => '<h4 class="sidebarTitle">',
    'after_title' => '</h4>',
));
2
Comentarios

¿Qué tema estás usando?

Androliyah Androliyah
12 oct 2012 20:35:33

Estoy usando uno propio. He actualizado la publicación con los fragmentos de código relevantes.

Scott B Scott B
12 oct 2012 23:43:35
Todas las respuestas a la pregunta 1
3

Reorganiza las llamadas a register_sidebar() en tu código para que la que deseas que aparezca primero se registre primero.

14 oct 2012 00:35:47
Comentarios

El único problema que tengo con eso es que quiero que las barras laterales aparezcan de arriba a abajo en el área de widgets según cómo aparecen en el tema. Así que "header" se posiciona más arriba que "sidebar".

Scott B Scott B
14 oct 2012 20:11:18

@Scott B por favor elabora en tu pregunta que te gustaría preservar el orden de las barras laterales en el admin, pero cambiar el comportamiento de los widgets de esa manera.

Rarst Rarst
14 oct 2012 20:15:42

Gracias Rarst. He actualizado la pregunta con más detalles.

Scott B Scott B
15 oct 2012 01:58:38