2011.08.28

WordPress のサイドバーを変える

特定カテゴリーのときに使用する sidebar.php ファイルを指定することはできたので、
次はその内容をメインのものと違うものにしようと思った。

追加したいウィジェットを並べれば基本的なものは使える。
テンプレートタグ/the widget

例えば、カレンダーを入れたいときはこんな感じである。
<div id=”sidebar”>
<div class=”sidebar-widget”>
<h4>カレンダー</h4>
<?php the_widget(‘WP_Widget_Calendar’); ?>
</div>
</div>

あとは、他のカテゴリーの情報とかを隠したかったので、最近の記事リストを独自に作った。

カテゴリー名とURLを出すところは前と同じだが、カテゴリー数だけ繰り返すので foreach を使っている。
このとき、カテゴリーIDが並んでいないので、一度配列に入れている。

最新の投稿から何件か、タイトルとリンクを出したかったので、
get_posts(‘numberposts=10 & category=’.$value); でカテゴリーから10記事をリストするようにした。

<h4>最近の記事</h4>
<?php
$array = array(43,44,45,47,46);
foreach ($array as &$value):
?>
<b><a href=”<?php
echo get_category_link($value);
?>”>
<?php
$cat = get_category($value);
echo attribute_escape($cat->cat_name);
echo ‘ (‘. attribute_escape($cat->category_count) .’)’;
?></a>
</b><br/>
<ul>
<?php $posts=get_posts(‘numberposts=10 & category=’.$value); ?>
<?php if ( $posts ) : foreach($posts as $post) : setup_postdata($post); ?>
<li><a href=”<?php the_permalink(); ?>”><?php the_title(); ?></a>&nbsp;-&nbsp;<?php the_time(‘Y/n/j’); ?>
<?php endforeach; endif; ?>
</ul>
<?php
unset($value);
endforeach;
?>
</div>

参考: WordPressで特定カテゴリーの新着記事リンクを表示させたい

あとはCSSとか変えようかなって思ってたけど、それ以外はだいたい思い通りになった。

そんなこんなで、「映画」カテゴリーを変えていったのである。
あとは同じように独立性が高い「旅」カテゴリーも同様に変えたいと思っている。


2011.08.28, 22:57 / WordPress
WordPress のサイドバーを変える はコメントを受け付けていません。

Comments are closed.