Como faço para colocar manualmente um código de widget?

4

Existe uma maneira que eu possa colocar um determinado widget em qualquer lugar no site?

Por exemplo :

Estou usando o widget de texto na minha barra lateral, para o título que coloco no YouTube, e coloquei o código de incorporação do YouTube nele. Mas eu quero que esse widget vá no topo do site. Como faço para que isso seja possível, enquanto ainda uso o menu de widgets, mas não aparece na barra lateral, mas onde quer que eu o coloque?

Se não for possível, alguém sabe de um widget da barra lateral do YouTube, que pode permitir que você coloque o código do widget em qualquer lugar do site e também o faça no menu de widgets?

    
por Terrell Anderson 09.03.2012 / 00:53

2 respostas

2

Basta registrar outra área de widget. Não leve o nome sidebar literalmente, você pode usar os campos em qualquer lugar da sua página.

No functions.php :

do seu tema
add_action( 'after_setup_theme', 'register_multiple_widget_areas' );

function register_multiple_widget_areas()
{
    register_sidebar(
        array(
        'name'          => 'Sidebar',
        'id'            => 'sidebar',
        'description'   => 'describe the function of the box.'
        )
    );
    register_sidebar(
        array(
        'name'          => 'Header',
        'id'            => 'header-widget',
        'description'   => 'Goes at the top of the page.'
        )
    );
}

E onde quer que você precise da chamada do widget de cabeçalho:

dynamic_sidebar( 'header-widget' );

Veja também register_sidebar() e dynamic_sidebar() .

    
por fuxia 09.03.2012 / 06:05
1

Você pode usar the_widget() :

the_widget(
    'WP_Widget_Archives',
    [
        'title'    => __( 'Archives', 'your-textdomain' ),
        'count'    => true,
        'dropdown' => true,
    ],
    [
        'before_widget' => '<section class="widget__container">',
        'after_widget'  => '</section>',
        'before_title'  => '<h2 class="widget__title">',
        'after_title'   => '</h2>',
    ]
);
    
por kaiser 09.03.2012 / 01:02

Tags