特定の固定ページに違うウィジェットを使いたい、とか色々出し分けたいときあると思います。
そういう時には新しくウィジェットを追加します。
いじるもの
- function.php
- sidebar.phpをコピーしたsidebar-任意の英数字.php
sidebar.php
<?if ( ! is_active_sidebar( '任意の英数字A' ) ) {
return;
}?>
<aside id="secondary" class="widget-area" role="complementary">
<?php dynamic_sidebar( '任意の英数字A' ); ?>
</aside><!-- #secondary -->
これらは例だから、全然違う形で書いてあったりするけど、とりあえずdynamic_sidebarとかactive_sidebarの中に任意の文字入れておけばオッケー
function.php
register_sidebar( array(
'name' => __( 'ウィジェット編集画面上での見出し', '親テーマ名' ),
'id' => '任意の英数字A',
'description' => __( 'ウィジェット編集画面上でのウィジェットの説明', '親テーマ名' ),
'before_title' => '<div class="ttl">',
'after_title' => '</div>',
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>'
) );
ちょっと説明>
before_titleとafter_title:ウィジェットの出力されるタイトルのタグ
こんな感じで出る。
<div class="ttl">ウィジェットのタイトル</div>
before_widgetとafter_widget:ウィジェットの大きい固まりではなくその中のパーツパーツを包むdivの記述ぽい。
変数は謎。とりあえず親テーマのregister_sidebar見とけばなんとかなるぞ。
テーマ作った人は偉大。
大事なこと
idはsidebar.phpで設定した名前にしておくこと!
そしたらpage.phpとかサイドバーを取得しているテンプレートファイルの以下の箇所を変更する。
<?php get_sidebar("任意の英数字"); ?>
これは、コピーしたsidebar.phpにつけた名前を入れる。
こんな感じです。
ついでに、固定ページとか投稿ページとかでこのスラッグ名の固定ページだけ今回作ったサイドバーを出したいとか、このカテゴリーのアーカイブページだけこのサイドバーを出したいとかその色々はここから。
(っ’ヮ’c)<おつかれ