it-swarm-eu.dev

Jak získat zaregistrovaný název postranního panelu podle jeho id?

Řekněme, že mám tento kód v mém "function.php" :

function mytheme_widgets_init() {
    register_sidebar( array(
        'name'          => esc_html__( 'Sidebar Name', 'mytheme' ),
        'id'            => 'sidebar-2',
        'description'   => '',
        'before_widget' => '<aside id="%1$s" class="widget %2$s">',
        'after_widget'  => '</aside>',
        'before_title'  => '<h2 class="widget-title">',
        'after_title'   => '</h2>',
    ) );
}
add_action( 'widgets_init', 'mytheme_widgets_init' );

Jak mohu získat tento název postranního panelu podle jeho id, nějaký tento kód?

get_dynamic_sidebar_name( 'sidebar-2' ); // -> Sidebar Name
3
5ervant

Boční panely jsou uloženy v globální proměnné $wp_registered_sidebars. Pomocí této proměnné můžete získat vlastnosti postranního panelu.

global $wp_registered_sidebars;
if ( isset( $wp_registered_sidebars['sidebar-2'] ) ) { 
    echo $wp_registered_sidebars['sidebar-2']['name'];
}

Všimněte si, že jej nepoužíváte příliš brzy, buď na/po widgets_init hook nebo v souboru šablony.

3
Sumit