相変わらずサイドバーとフッター。スライド置けるのか?

書き換えまとめ。
手を尽くしたんだって主張(何とか辿り着いた道筋の記録)。
1つ目。
サイドバー(sidebar.php)の書き換え
↓元の記述

<?php dynamic_sidebar( __( 'Sidebar', 'convention' ) ); ?>

デフォルトテーマのひとつ『twentyten』の記述アレンジで、

<?php
/**
 * The Sidebar containing the primary and secondary widget areas.
 **/
?>
<?php
	/* When we call the dynamic_sidebar() function, it'll spit out
	 * the widgets for that widget area. If it instead returns false,
	 * then the sidebar simply doesn't exist, so we'll hard-code in
	 * some default sidebar stuff just in case.
	 */
	if ( ! dynamic_sidebar( 'primary-widget-area' ) ) : ?>

			<?php dynamic_sidebar( __( 'Sidebar', 'convention' ) ); ?>
<?php endif; // end primary widget area ?>
<!-- #primary .widget-area -->

<?php
	// A second sidebar for widgets, just because.
	if ( is_active_sidebar( 'secondary-widget-area' ) ) : ?>

<div id="footer">
<ul>
<?php dynamic_sidebar( 'secondary-widget-area' ); ?>
</ul>
</div><!-- #secondary .widget-area -->

<?php endif; ?>

2つ目。
新規phpsidebar-footer.php』の編集
↓元の記述

<?php
<div id="footer" class="clear">

<div id="footer_left">
<ul><?php dynamic_sidebar('footer_left'); ?></ul>
</div>

<div id="footer_center"><ul><?php dynamic_sidebar('footer_center'); ?></ul></div>

<div id="footer_right"><ul><?php dynamic_sidebar('footer_right'); ?></ul></div>

<div class="clear">
<small>Copyright &copy; <?php echo date("Y"); ?> <a href="http://calluson.info/"><?php bloginfo('name'); ?></a></small>
</div>
</div>
<?php wp_footer(); ?>
</body>
</html>

これも『twentyten』の記述アレンジで、

<?php
/**
 * The Footer widget areas.
 **/
?>

<?php
	/* The footer widget area is triggered if any of the areas
	 * have widgets. So let's check that first.
	 *
	 * If none of the sidebars have widgets, then let's bail early.
	 */
	if (   ! is_active_sidebar( 'footer_left'  )
		&& ! is_active_sidebar( 'footer_center' )
		&& ! is_active_sidebar( 'footer_right'  )
	)
		return;
	// If we get this far, we have widgets. Let do this.
?>

			<div id="footer" class="clear">

<?php if ( is_active_sidebar( 'footer_left' ) ) : ?>
				<div id="footer_left">
					<ul>
						<?php dynamic_sidebar( 'footer_left' ); ?>
					</ul>
				</div><!-- #first .widget-area -->
<?php endif; ?>

<?php if ( is_active_sidebar( 'footer_center' ) ) : ?>
<div id="footer_center"><ul><?php dynamic_sidebar('footer_center'); ?></ul></div>
<!-- #second .widget-area -->
<?php endif; ?>

<?php if ( is_active_sidebar( 'footer_right' ) ) : ?>
<div id="footer_right"><ul><?php dynamic_sidebar('footer_right'); ?></ul></div>
<!-- #third .widget-area -->
<?php endif; ?>

			</div><!-- #footer-widget-area -->
<div class="clear">
<small>Copyright &copy; <a href="http://calluson.info/"><?php bloginfo('name'); ?></a> <?php echo date("Y"); ?></small>
</div>
</div>
<?php wp_footer(); ?>
</body>
</html>

変更点は、

  1. 4つあるウィジェットエリアを3つにした。
  2. if文の中の名前を変更した。

ここまでの変更でサイドバーからフッターメニューを消すことに成功している。
あとは『is_active_sidebar』の関数をどう扱うかでフッター表示ができそうな気配。

3つ目。
『register-sidebar.php』の変更
これは他のテーマだと『functions.php』で処理するようだが、
ウチが選んだテーマはここで。
↓元の記述(ウィジェットエリアを増やす変更が済んだ状態)

<?php

register_sidebar(array(
'name' => __('Sidebar', 'convention'),
'before_widget' => '',
'after_widget' => '',
'before_title' => '<div id="sidebar-widget"><div class="sidebar-heading">',
'after_title' => '</div></p>',
));

register_sidebar(array('name' => 'footer_left'));

register_sidebar(array('name' => 'footer_center'));

register_sidebar(array('name' => 'footer_right'));

?>

ここで追加する記述がfunctionで、新しい関数も出ているので、
変更するのここだけでいいのかなあ、という気がしてくる。

<?php
function convention_widgets_init() {
register_sidebar(array(
'name' => __('Sidebar', 'convention'),
'id' => 'primary-widget-area',
'description' => __( 'The primary widget area', 'convention' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '<div id="sidebar-widget"><div class="sidebar-heading">',
'after_title' => '</div></p>',
));

register_sidebar( array(
'name' => __( 'Footer Left', 'convention' ),
'id' => 'secondary-widget-area',
'description' => __( 'The secondary widget area', 'convention' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '<div id="sidebar-widget"><div class="sidebar-heading">',
'after_title' => '</div></p>',
	) );

register_sidebar(array('name' => 'footer_center'));

register_sidebar(array('name' => 'footer_right'));

}
add_action( 'widgets_init', 'convention_widgets_init' );
?>

ためしに、フッターひとつだけに記述を増やしたこの状態で上げたら、
サイドバーまで真っ白(驚)。>すぐ戻した
表示されなくなったのは、functionの条件付けが間違ってるのだろう。
セカンダリの記述もまだ怪しい。

スライド置きたいんだよーって場所に、
最後の画像だけぽいっと上げてみた。
本番サイトでカンプ状態の見せ方ってグダグダだなあ、
と反省しつつ、カッコつけてもしょうがないしねと開き直り。
身の丈に合った等身大の実況。