銀河鉄道

【WordPress】ウィジェットでサイドバーを作る

サムネイル
ウィジェットサイドバー
ウィジェット

とても便利

ウィジェットを使うと、簡単にサイドバーを設置できます

1.functions.phpに設定

nameは、サイドバー名

function my_theme_widgets_init() {
    register_sidebar(array(
        'name' => 'side-bar',
        'id' => 'side-bar',
        'before_widget' => '<aside class="p-side-bar">',
        'after_widget' => '</aside>',
        'before_title' => '<h3 class="side-title">',
        'after_title'  => '</h3>',
    ));
}
add_action('widgets_init', 'my_theme_widgets_init');

タグやクラス名は自分の好きなものを

register sidebar

‘widgets_init’ アクションで呼び出してください

2.管理画面|外観→メニュー

好きなメニュー名をつける

3.管理画面|外観→ウィジェット

1.ナビゲーションメニューを選択する

サイドバー名が表示されるので、+ボタンを押す

2.メニュー名を選ぶ

作ったメニュー名が表示されるので、選択

タイトル欄には、表示したいタイトルを入力

4.sidebar.php

()の中身は、自分で作ったサイドバー名

<?php if (is_active_sidebar('category-nav')) : ?>
    <?php dynamic_sidebar('category-nav'); ?>
<?php endif; ?>

dynamic sidebar

この関数はアクティブなウィジェットコールバック関数を順に呼び出し、サイドバーに表示します

5.設置したい場所に記述

<?php get_sidebar(); ?>

6.出力されるHTML

上記の設定で、出力されるHTMLがこちら

<aside class="p-side-bar">
    <h3>カテゴリ</h3>
    <div class="menu-category-nav-container">
        <ul id="menu-category-nav" class="menu">
            <li class="menu-item"><a>xxx</a></li>
            <li class="menu-item"><a>xxx</a></li>
            <li class="menu-item"><a>xxx</a></li>
        </ul>
    </div>
</aside>

「menu-(メニュー名)」というクラスがつく

著者

author
月うさぎ

編集後記:
この記事の内容がベストではないかもしれません。

記事一覧