web-dev-qa-db-ja.com

WordPressのheader.phpにウィジェットを追加するにはどうすればよいですか?

名前がTranslator Boxのpludginをインストールしました。その短いコードを使用して、それを私のwordpress themeheader.phpに入れました。

 [translation_box languages="english,russian,german,spanish,french,chinese" width="100%" height="200px" bgcolor="white" txtcolor="#000000"]

しかし、動作しません!

また、ウィジェット部分の有効ウィジェットでウィジェットを生成します。ウィジェットを呼び出すことができるheader.phpのコードを使用する方法はありますか?ありがとうございました。

7
down1337

Header.phpでパーツを定義して、ウィジェットを表示できます。関数.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' );

たとえば、最初の部分はサイドバーのウィジェット領域で、2番目の部分はヘッダーのウィジェット領域です。

次に、header.phpファイルに含めます。

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar-2') ) : ?>
<?php endif; ?>

ウィジェットがあるべき場所。

管理インターフェースには、ウィジェットで埋めることができる2つの領域(「メインサイドバー」と「ヘッダー領域」)があります。

15
Sven

使用 do_shortcode

<?php echo do_shortcode( $content ) ?>
2
Alec Sanger