概要説明
サイドエリアだけでなく記事詳細ページなどに自由にウィジェットを配置できるようにするためのウィジェットエリア追加カスタマイズ。
~ 目次 ~
ウィジェットリエア定義
functions.php
/*---------------------------------------------------- ウィジェットエリア追加 ----------------------------------------------------*/ if ( !function_exists( 'remove_admin_menu_update' ) ){ function add_widgets_init() { register_sidebar( array( 'name' => '追加したウィジェットエリア', 'id' => 'widget_free_area', 'description' => 'ウィジェットの用途など説明テキスト', 'before_widget' => '<section id="%1$s" class="widget %2$s">', 'after_widget' => '</section>', 'before_title' => '<h2 class="widget-title">', 'after_title' => '</h2>', ) ); } add_action( 'widgets_init', 'add_widgets_init' ); }
ウィジェットページに追加したエリアが表示されることを確認
旧来のウィジェット設定画面を表示させる
Classic Widgets ウィジェット表示がブロックエディター仕様の新ウィジェットの場合は Classic Widgets プラグインの導入をおすすめ致します。
テンプレート側での呼び出し
<!-- 任意の位置でウィジェットエリアを呼び出し --> <div id="widget_free_area"> <?php dynamic_sidebar( 'widget_free_area' ); ?> </div>
ウィジェットでエリアを確保しておく
ウィジェットエリアをトップページや詳細ページに埋め込む作業をテンプレートで行っておけば後で内容を変更したいときにも管理画面から調整が行いやすくなります。