カスタマイズ続けてます。

このブログではサイドバーに
・flickr
・最近の記事
・カテゴリー
・月別アーカイブ
・リンク(Blog Peopleのデータを表示)
を表示するように設定していたんだけど
正直トップページはともかく
カテゴリーページ、月別アーカイブページ、個別記事のページ
に至るまですべて読み込むのは表示に時間がかかってしょうがない。

特に
カテゴリーページ、月別アーカイブページ
にはサイドバー上の「最近の記事」の欄に本文と同じリスト表示がされていて

(写真参照、クリックすると拡大表示されます)

サイドバーの二重状況

完全に二重になってしまって見栄えの点でも非常に悪い。

すぐには解法が見つからなかった。

調べてみたら
WordPressって
標準のテンプレートはindex.phpなんだけど
これ以外にもテンプレートは作れて
ページによって違うデザインに、なんてこともできるらしい。

参考
wordpressが管理するテンプレートのファイル名@ Tech de Go
WordPress Codex

こちらを参考に以下の改造をした。

1.sidebar.phpをコピーし、sidebar2.phpというファイルを作成。

2.sidebar.phpを編集し、不要な要素を削除。
ここではトップページにあればよい
・flickr
・最近の記事のリスト表示
・Blog Peopleのデータ
を対象とした。

2.index.phpをコピーし、home.phpというファイルを作成。
これはトップページ専用のテンプレートにする。

3.home.phpの該当行を以下のように編集

(編集前)

< ?php get_sidebar(); ?>

(編集後)

< ?php include(TEMPLATEPATH . ‘/sidebar2.php’); ?>

WordPressではデフォルトで用意されたテンプレート(名前が決まっている)以外を読み込むことも
できるけれど、その場合このようにPHPのinclude文をつかってあげる必要がある。

ここでは
sidebar2.phpを読み込むように変更している。

念のためバックアップはとった形で
上記修正。

トップページのみの変更としたのは
逆でやるとhome.php以外のすべてのテンプレートに修正が必要になってしまい、
工数が増える(よって、ミスの可能性が増える)ため。

不要な読み込みが減ったことで表示も速くなるし、
サーバの負荷も減るはず。

多少軽くなったでしょうか?







関連記事(試験運用中)

  • No related posts




  • コメント/トラックバック:0 個 »

    トラックバックURL: http://blackpepper.oops.jp/wp/archives/2070/trackback

    この記事にはまだコメントがついていません。

    コメントをどうぞ

    コメント、トラックバックは確認後に表示されます。しばらくお待ちくださいね。

    段落や改行は自動挿入です。メールアドレスはサイト上では非表示です。
    使用できる HTML タグ: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>