wake-up-neo.com

Holen Sie sich eine benutzerdefinierte Seitenleiste auf der Seite für benutzerdefinierte Post-Archive

Ich habe einen benutzerdefinierten Beitragstyp namens "bibliographies" und die entsprechende Datei archive-bibliographies.php, um eine Liste der Beiträge anzuzeigen. Auf dieser Seite möchte ich eine Seitenleiste hinzufügen, die für diese Seite einzigartig ist. Deshalb habe ich eine neue Seitenleiste wie die folgende registriert:

// Register Bibliography Sidebar
function bibliography_sidebar() {
    register_sidebar( array(
        'name' => 'bibliography_sidebar',
        'id' => 'bibliography_sidebar',
        'description' => __( 'Widgets in this area will be shown on the bibliography sidebar.', 'theme-slug' ),
        'before_widget' => '<li id="%1$s" class="widget %2$s">',
        'after_widget'  => '</li>',
        'before_title'  => '<h2 class="bibliography_sidebar">',
        'after_title'   => '</h2>',
    ) );
}
add_action( 'widgets_init', 'bibliography_sidebar' );

in der Datei archive-bibliopgraphies.php versuche ich, die Seitenleiste folgendermaßen aufzurufen:

get_sidebar('bibliography_sidebar');

Ich sehe die neue Seitenleiste auf der Administratorseite und kann Widgets hinzufügen, aber im Frontend bekomme ich nur die Hauptseitenleiste, nicht die Seitenleiste "bibliography_sidebar".

Irgendwelche Ideen, was mir hier fehlt?

4

get_sidebar($name) lädt eine Vorlage sidebar-{$name}.php. Wenn sidebar-{$name}.php nicht vorhanden ist, wird auf das Laden von sidebar.php zurückgegriffen.

um Ihre spezielle Seitenleiste zu haben, können Sie eine Datei sidebar-bibliography_sidebar.php in Ihrem Design mit folgendem Code erstellen:

<?php

if ( is_active_sidebar( 'bibliography_sidebar' ) ) {
    dynamic_sidebar( 'bibliography_sidebar' );
}
2
mmm