サイドバーを追加・ウィジェットを表示

WordPress

なんだか落ち着かないのでサイドバーを追加することにしました。

<?php get_header(); ?>

			<div class="col-sm-8 blog-main">
				<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
				<!-- コンテンツを記述 -->
				<div id="content" role="main" class="blog-post">
					<h2><?php the_title(); ?></h2>
					<div><?php the_content(); ?></div>
				</div><!-- /#content -->
				<?php endwhile; endif; ?>
			</div>

			<div class="col-sm-3 offset-sm-1 blog-sidebar">
				<?php get_sidebar(); ?>
			</div>
			
		</div><!-- /.row -->
	</div><!-- /.container -->

	<footer class="blog-footer">
		<p><?php bloginfo('name'); ?> © <a href="https://twitter.com/na27tu">なつ</a>.</p>
		<p><a href="#">Back to top</a></p>
	</footer>
    
</body>
</html>

前回記事ナビゲーションを追加したりフッターを作ったりで参考にさせていただいたBootstrapのサンプルサイトを見てサイドバーの記述を追加。

get_sidebar(); で表示するとウィジェットの初期内容が表示されました。

よしよし。さて、ウィジェットを編集するか、と管理画面に行くと、ウィジェットがない!

ウィジェットって、デフォルトの機能じゃないんですねぇ。

いや、準備はされているみたいなんですが、使うよ!っていう指示をしないと表示されないみたい。

いままで使ってきたテーマが準備してくれてたものだったんですね。

と、いうわけでウィジェットも使えるようにするため、functions.phpを編集します。

参考にした記事はこちら。

http://www.youngflavor.net/2015/02/2953/
// サイドバーウィジェットを表示
add_action( 'widgets_init', 'my_widgets_init' );
function my_widgets_init() {
	register_sidebar( array(
		'name'          => 'ウィジェットエリア',
		'id'            => 'sidebar-1',
		'before_widget' => '<li id="%1$s" class="widget %2$s">',
		'after_widget'  => '</li>',
		'before_title'  => '<h2 class="widget-title">',
		'after_title'   => '</h2>',
	) );
}

ここで設定した ‘name’ => ‘ウィジェットエリア’ が管理画面にタイトルとして表示されます。

この塊は複数作れるみたいですね。ま、とりあえずは一つで大丈夫。

この中にウィジェットを一つも登録しない限り、「メタ情報」とか、初期のサイドバーの内容が表示されるようですね。

タイトルとURLをコピーしました