勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

WordPressで自作テーマにウィジェットを登録する方法

   2024/02/22  WordPress

WordPressで自作したテーマでウィジェットを登録しようとしたところダッシュボードの「外観」内にウィジェットの項目が無かった。ウィジェットを導入するには多少手順があるみたいなのでその方法をメモ。

 

functions.phpに追記

//ウィジェット対応
function arphabet_widgets_init() {

    register_sidebar( array(
        'name' => 'ヘッダー', //ダッシュボード上に表示されるので分かりやすい名前が良い
        'id' => 'header_widget', //呼び出しの際に使う
        'before_widget' => '<div>',
        'after_widget' => '</div>',
        'before_title' => '<h2 class="rounded">',
        'after_title' => '</h2>',
    ) );
}
add_action( 'widgets_init', 'arphabet_widgets_init' );

widgets_initのリファレンスは以下。

widgets_init

ウィジェットを表示させるファイルに追記

<?php if ( is_active_sidebar( 'header_widget' ) ){ //functions.phpで追記したidを引数に入れる?>
    <div id="primary-sidebar" class="primary-sidebar widget-area" role="complementary">
        <?php dynamic_sidebar( 'header_widget' ); //functions.phpで追記したidを引数に入れる?>
    </div>
<?php } ?>

 

まとめ

functions.phpとウィジェットを表示させたいファイルに追記し、通常通りダッシュボードの「外観→ウィジェット」から登録することで表示される。

 - WordPress

  関連記事

WordPressの自動更新(アップデート)を無効化する方法
WordPressの自動更新(アップデート)を無効化する方法

あるサーバで通常はロードアベレージが1未満だけど10以上に上がりサーバに接続しづ ...

WordPressで記事検索時に投稿ID順にならない場合の対応方法
WordPressで記事検索時に投稿ID順にならない場合の対応方法

WordPressでサイト上から記事検索(キーワード検索)を行った場合、通常であ ...

WP Social Bookmarking LightでSNSボタンが表示されない際の対応方法
WP Social Bookmarking LightでSNSボタンが表示されない際の対応方法

WordPressでWordPress WP Social Bookmarkin ...

WordPressで複数あるクリック広告をランダムで表示させる方法
WordPressで複数あるクリック広告をランダムで表示させる方法

同じクリック広告をずっと貼っているとクリック単価が下がると聞いた。WordPre ...

WordPressのContact Form 7から送信した内容をダッシュボードから確認及びCSVファイル化する方法
WordPressのContact Form 7から送信した内容をダッシュボードから確認及びCSVファイル化する方法

WordPressのContact Form 7プラグインで実装されたお問い合わ ...