WordPress – Barra lateral diferente para cada página

5 minutos de lectura

El cliente necesita un sitio web para migrar a WordPress.

En este sitio web cada página tiene una barra lateral con diferente contenido dentro de ella

En algunas páginas, el acordeón aparece debajo de la barra lateral, en algunas solo se ven texto e imágenes.

¿Cómo implementar esto en WordPress?

Si se debe crear una plantilla, hay muchas páginas que no se pueden hacer.

Incluso para cada página no es posible un widget de barra lateral diferente

Guíame una manera de implementar esto

avatar de usuario
Proyectitis

Se puede agregar una barra lateral diferente (widget) a cada página en dos pasos:

  1. Agrega la barra lateral a la plantilla del tema usando el slug de la página como parte del nombre de la barra lateral. Esto asegura que la barra lateral tenga un nombre único para esa página.
  2. Registre las barras laterales para cada página en functions.php por tu tema

Agregar la barra lateral a la plantilla de tema

En su plantilla de tema, agregue el siguiente código donde desea que esté el área del widget:

<?php
    global $post;
    dynamic_sidebar( 'widget_area_for_page_'.$post->post_name );
?>

Registrar las barras laterales

En functions.php para su tema, agregue el siguiente bloque de código para registrar las barras laterales para cada página de su sitio. Tenga en cuenta que incluye páginas de borrador, etc. para que pueda editar los widgets mientras aún está en modo borrador.

function myTheme_registerWidgetAreas() {
    // Grab all pages except trashed
    $pages = new WP_Query(Array(
        'post_type' => 'page',
        'post_status' => array('publish', 'pending', 'draft', 'auto-draft', 'future', 'private', 'inherit'),
        'posts_per_page'=>-1
    ));
    // Step through each page
    while ( $pages->have_posts() ) {
        $pages->the_post();
        // Ignore pages with no slug
        if ($pages->post->post_name == '') continue;
        // Register the sidebar for the page. Note that the id has
        // to match the name given in the theme template
        register_sidebar( array(
            'name'          => $pages->post->post_name,
            'id'            => 'widget_area_for_page_'.$pages->post->post_name,
            'before_widget' => '',
            'after_widget'  => '',
            'before_title'  => '',
            'after_title'   => '',
        ) );
    }
}
add_action( 'widgets_init', 'myTheme_registerWidgetAreas' );

¡Espero eso ayude!

  • ¿Cómo agregamos la barra lateral que se crea en el widget a las opciones de la página para seleccionar una barra lateral diferente para cada página? sin el uso de complementos.

    – Amir Khadem

    1 oct 2019 a las 21:46

Hay un gran complemento para esto:

https://wordpress.org/plugins/barras-laterales-personalizadas/

A veces es necesario mostrar diferentes elementos en las barras laterales de algunas publicaciones o páginas. Los temas hoy en día te dan algunas áreas para colocar los widgets, pero esas áreas son comunes para todas las publicaciones que usan la misma plantilla. NOTA: debe usar un tema que acepte widgets para que este complemento funcione.

Captura de pantalla

Creo que esto es lo que estás buscando.

  • muchas gracias.. lo checare

    – Sangeetha Mani

    19 de marzo de 2014 a las 11:28

Esto se puede hacer con el https://wordpress.org/plugins/jetpack/ enchufar. Una vez activado puedes elegir qué widgets Mostrar en qué páginas:

El módulo Visibilidad de widgets le permite configurar widgets para que aparezcan solo en ciertas páginas (o se oculten en ciertas páginas) usando el panel Visibilidad.

ingrese la descripción de la imagen aquí

La visibilidad está controlada por cinco aspectos: tipo de página, categoría, etiqueta, fecha y autor. Por ejemplo, si desea que el widget Archivos solo aparezca en archivos de categoría y páginas de error, elija “Mostrar” en el primer menú desplegable y luego agregue dos reglas: “La página es una página de error 404” y “La categoría es Todas las páginas de categoría”.

ingrese la descripción de la imagen aquí

Acabo de probar las barras laterales personalizadas con la última versión de wp. Me costó borrarlo. La base de datos todavía está desordenada. El complemento no funcionó. Tal vez la versión ‘pro’ sea útil, pero la versión ‘no profesional’ no agregaría una barra lateral a la página. Era torpe y no permitía barras laterales por página. Dice que no ha sido probado con el último wp, tal vez ese sea el problema.

Puede crear una barra lateral personalizada para cada publicación y página con la ayuda del complemento. Hay algunos complementos que le permiten crear su barra lateral personalizada. Aquí, en este tutorial, estamos usando barras laterales fáciles de personalizar. Descargue e instale este complemento en su sitio web y actívelo.

Después de activar con éxito el complemento, vaya a Apariencia > Reemplazo de la barra lateral

Desde esta página, asigne un nombre a su barra lateral personalizada y haga clic en el Crear barra lateral botón. Después de eso ve a la Propiedades de la barra lateral opción. Aquí debe seleccionar las propiedades en las que desea reemplazar la barra lateral personalizada creada en lugar de la barra lateral del tema. Puede ver su opción disponible en el menú desplegable. Selecciónelo y proporcione una descripción en el Descripción de la barra lateral campo. Ahora, en el último paso, seleccione la publicación o las páginas para agregar esta barra lateral personalizada. Puedes ver todas las opciones en la columna de la izquierda. Puede seleccionar publicación específica, página, categoría, etiqueta, autor para agregar esta barra lateral. Simplemente selecciónelo y haga clic en Agregar a la barra lateral opción.

Para una mejor comprensión puede seguir este tutorial

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad