如何将小部件添加到wordpress中的header.php?

dow*_*337 7 wordpress wordpress-plugin

我安装了一个名为的插件Translator Box,我使用它的短代码并将其放入我的wordpress主题header.php.

 [translation_box languages="english,russian,german,spanish,french,chinese" width="100%" height="200px" bgcolor="white" txtcolor="#000000"]
Run Code Online (Sandbox Code Playgroud)

但是不起作用!

它还在窗口小部件的"已启用"窗口小部件中生成窗口小部件.有没有办法在header.php中使用一些可以调用小部件的代码?谢谢.

Sve*_*ven 15

您可以在header.php中定义一个部件来显示小部件.在你的functions.php中做这样的事情:

function my_widgets_init() {

register_sidebar( array(
    'name' => __( 'Main Sidebar', 'your-theme' ),
    'id' => 'sidebar-1',
    'before_widget' => '<div id="%1$s" class="widget %2$s">',
    'after_widget' => "</div>",
    'before_title' => '<h3>',
    'after_title' => '</h3>',
) );

register_sidebar( array(
    'name' => __( 'Header Area', 'your-theme' ),
    'id' => 'sidebar-2',
    'description' => __( 'An optional widget area for your site header', 'your-theme' ),
    'before_widget' => '<div id="%1$s" class="headwidget %2$s">',
    'after_widget' => "</div>",
    'before_title' => '<h3>',
    'after_title' => '</h3>',
) );
}
add_action( 'widgets_init', 'my_widgets_init' );
Run Code Online (Sandbox Code Playgroud)

例如,第一部分将是侧边栏中的窗口小部件区域,第二部分是标题中的窗口小部件区域.

现在包含在header.php文件中:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-2') ) : ?>
<?php endif; ?>
Run Code Online (Sandbox Code Playgroud)

您的小部件应该在哪里.

在你的管理界面,你现在应该有2个区("主侧边栏"和"标题区"),你可以用小部件填补.


Ale*_*ger 2

使用do_shortcode

<?php echo do_shortcode( $content ) ?>
Run Code Online (Sandbox Code Playgroud)