コンテンツへスキップ

サイドバーにどんどんウィジェットを追加していくと、縦に長くなってしまいます。
そこで、ウィジェットエリアをフッターに持ってきました。3段組みです。
今までは、サイドバー1だけを、ウィジェットで使っていましたが、サイドバーを3つ追加します。
ウィジェットを追加するためには、function.php に次のように指定します。

register_sidebar();
register_sidebar();
register_sidebar();

管理画面から「ウィジェット」を開くと、3つが追加されます。
3段ぐみにするにはスタイルシート(style.css)でデザインします。
フッターに書くのは、次のようなタグです。この例ではサイドバー2を出力します。

<?php dynamic_sidebar(2); ?>

月ごとの記事にパンくずリストを表示させて、年の記事を表示させるというのを前回やりました。

今度は、今まで「古い記事」をクリックして前のページを表示させていました。
これを、ページ番号として表示し、複数の記事へアクセスできるようにしました。
見通しがよくなるので、効率よくアクセスができるようになります。

月のコンボボックスから、指定月を選択し、パンくずリストから「2012」をクリックすると、ずらっとページ番号が出てきます。
これは、pagenation.php で指定しました。

標準で用意されたウィジェットでは、カテゴリを並べ替えることはできません。
カスタムメニューの機能を使うと、順番を並べ替えたり、不要なメニューを非表示にしたりできます。

カスタムメニューは「外観」→「メニュー」から作成します。
作成したらメニューには名前を付けて保存しておきます。タイトルは「カテゴリー」としておきます。ここで並べ替えなどをしておきます。

「外観」→「ウィジェット」からウィジェット画面へ移動し、現在の「カテゴリー」をドラッグして外に出して、代わりに「カスタムメニュー:カテゴリー」を、サイドメニュー1までドラッグします。

 

個別ページに「パンくずリスト」を設定しました。
パンくずリストとは、表示中のページから上位階層へのページにアクセスができるようにするものです。
トップページへと、カテゴリリンクへ移動できるようにしました。

プラグインもあるようですが、ここはプラグインを使わず、テンプレートに記述しました。

 

DreamWeaverで転送するときに、日本語が文字化けして困っていましたが、ようやく文字化け対策ができました。
エンコードをトップに書いておいてもダメなのでした(^^;

ここです。「ページプロパティ」のなかのエンコーディングが「シフトJIS」になっておりました。
原因が分かって嬉しいです。

1

WordPress Popular Posts というプラグインを入れました。
アクセスの多い記事から順番に表示してくれるというものです。

自分のアクセスはカウントされないようなので、残念ながら結果を試すことはできません。もしかしたら、カウントされないのではなく子ブログのためかもしれません。
マルチサイトの子ブログでは動かないプラグインがあります。
ネットワーク管理者でプラグインの有効化をとめて、子ブログのほうで有効化してみましたが、いまだ反映されておりません。

お隣りの手編み勉強室で試してみたところ、すんなりと表示されました。
動作を確認できてよかったです。

「手編み勉強室」ブログでは、サイドバーにウィジェットを使っていません。
ウィジェットを使わないで、サイドバーに入れるのに、sidebar.php に次のスクリプトを追加しました。

<? wpp_get_mostpopular('
order_by="views"
&range="weekly"
&stats_comments=0
&limit=10
'); ?>

それと、ディフォルトでは<ul>になっていたため、プラグインの次の部分を編集して順位が出るようにしました。

'wpp_start' => '<ol>',
'wpp_end' => '</ol>',

標準で「テキスト」というウィジェットが用意されていますが、これはPHPが動作しません。そこで、オリジナルのウィジェットを作るために PHP Code Widget プラグインを導入しました。

テンプレートに書いておいた、ステータスを出力するスクリプトを、sidebar.php から移動させます。
このようにすると、ウィジェットとして管理できるので、位置を入れ替えたりすることも可能です。

オリジナルのウィジェットをもう一つ作りました。
特定のカテゴリを表示するウィジェットです。
コレ、面白い!
でもサイドバーがちとにぎやかすぎますね。後で削除しておこう。

 

千絵

このページは練習用として作成しているテストサイトです。記事の内容とサイトの構成は異なる部分もあります。既存のテーマを使わず、1からテーマを作成しているのでヘンなところもいっぱいあります(^^;

投稿フォーマットとは、記事の種類を指定する機能です。独自のフォーマットを使うことはできず、ガイドラインに沿って使用する必要があります。
Twitter のように短い記事を投稿するのに、ステータス(status)というフォーマットがあります。
この機能を有効にするには、function.php に次のようなタグを追加します。

add_theme_support('post-formats', array('status'));

投稿画面を開くと、右側に「ステータス」という項目が表示されますので、「ステータス」をチェックします。

トップページを開くと、投稿した記事が最新記事として表示されます。

 

「ステータス」をサイドバーに表示するようにしました。
このままでは、最近記事にも同じものが表示されてしまいますので、home.php には、最新記事の一覧からステータスを削除するスクリプトを書いておきます。

最新記事を表示するときに、最新の何件かをサムネイルと概要を表示し、残りの件数をタイトルのみで表示するようにしました。
例えば、最初の2件を表示するタグは次のとおりです。

<?php query_posts('posts_per_page=2
&ignore_sticky_posts=1'); ?>

3件~10件をタイトルのみで表示するようにループです。

<?php query_posts('posts_per_page=8&offset=2
&ignore_sticky_posts=1'); ?>
<?php if(have_posts()): while(have_posts()): 
the_post(); ?>
	<?php get_template_part('content','title'); ?>
<?php endwhile; endif; ?>

概要の文字数を74文字に変更しました。「続きを読む」を入れて3行ぐらいに収まるように。
function.php の中を次のように変えました。

function my_excerpt_mblength($length) {
     return 80;
}
add_filter('excerpt_mblength', 'my_excerpt_mblength');