crocodile notebook

feedly feedburner google+ twitter facebook creative commons BY:2.1 プロフィール


こんな記事ですけどwordpress使い始めてまだ1年ちょっとなんですボクも。
どうも、鰐です!

そんなまだまだ新人気分が抜けてないボクですから、やれることもまだまだ新人なわけで。
既存のテーマからちょっと抜け出したいときに便利な構文をいくつかご紹介。
みんなでもっと自由になろうぜ!

閲覧しているページによって表示内容を変える方法

インデックスページ、個別ページ、カテゴリーアーカイブ、日付アーカイブ、検索結果など。
それぞれのページで表示したいものを変更する場合に使います。
例えば表示させるバナーを変更したり、ですね。

<?php if (is_home()) { ?>
	インデックスページで表示させたい内容を書きます
<? } elseif (is_single()) { ?>
	個別ページで表示させたい内容を書きます
<? } elseif (is_category()) { ?>
	カテゴリーアーカイブで表示させたい内容を書きます
<? } elseif (is_archive()) { ?>
	日付アーカイブで表示させたい内容を書きます
<? } else { ?>
	その他のページで表示させたい内容を書きます
<? }; endif; ?>

インデックスページ、個別ページ、その他の3パターンで表示を切り分けたい場合、以下のようにします。

<?php if (is_home()) { ?>
	インデックスページで表示させたい内容を書きます
<? } elseif (is_single()) { ?>
	個別ページで表示させたい内容を書きます
<? } else { ?>
	その他のページで表示させたい内容を書きます
<? }; endif; ?>

参考:条件分岐タグ

個別ページで同じカテゴリ内の新着記事(自分を除く)を表示させる方法

このブログのサイドバーにあるように、カテゴリー別の新着記事を表示させる方法です。
表示している個別記事のカテゴリーIDを参照して、指定した件数の記事を抽出します。
記事に対して最後にアップロードした画像がサムネイルとして表示されます。

<?php if (is_single()) { ?>
<h2><?php $cat = get_the_category(); echo get_category_parents($cat&#91;0&#93;, true,'&nbsp;&raquo;&nbsp;'), ' '; ?>の新着記事</h2>
<ul>
<?php $categories = get_the_category();
      foreach($categories as $category):
      $related_posts = get_posts('numberposts=7&order=desc&category='.$category->cat_ID.'&exclude='.$post->ID);
      if($related_posts): ?>
<?php foreach($related_posts as $related_post): ?>
<li class="recentImage">
<a href="<?php echo get_permalink($related_post->ID); ?>"><?php dp_attachment_image($related_post->ID, 'thumbnail', 'alt="' . $post->post_title . '" border="0" class="thumbimg"'); ?></a>
</li>
<li class="recentTitle">
<p class="catLink"><a href="<?php echo get_permalink($related_post->ID); ?>"><?php echo $related_post->post_title; ?></a></p>
<p class="catDate">&nbsp;&raquo;&nbsp;<?php echo get_the_time('Y.m.d',$related_post->ID); ?></p>
</li>
<?php endforeach; ?>
<?php endif; endforeach; ?>
</ul>
<?php } ?>

6行目がカスタムのポイントです。
「numberposts=7」が表示する件数です。
「’&exclude=’.$post->ID」が指定されていると、表示されている記事を除外します。
一覧に表示している記事を含ませる場合は「.’&exclude=’.$post->ID」を削除してください。
「category=’.$category->cat_ID.’」が表示している記事と同じカテゴリーIDを検索させる命令です。
全カテゴリーの最新記事を検索させる場合は削除してください。

期間限定で表示させる方法

例えばセール期間を知らせる広告バナーを表示させる場合などに使えます。
リマインド的に表示させて、タイミングが来たら以後は表示させないなどもアリですね。

<?php 
$BlogTime = current_time('mysql'); 
list( $yy, $mm, $dd, $hs, $ms, $ss ) = split( '(&#91;^0-9&#93;)', $BlogTime );
if ( ($yy >= 2011 && $mm >= 12 && $dd >= 29) || ($yy <= 2012 && $mm <= 1 && $dd <= 2) ) { ?>
ここに表示させたいHTMLを書きます。
<?php } ?>

この場合、2011年12月29日〜2012年01月02日まで表示となります。
時:分:秒まで厳密に設定することも可能です。
4行目の$ddに続いて$hs、$ms、$ssを同じように不等号を用いて設定してください。

自作のテンプレート(.phpファイル等)を読み込ませる方法

記事を更新するほどではないけど、ちょっとしたテキストを表示させたい場合に使えます。
それぞれのテンプレートを直接更新しても良いけど、あまりスマートじゃないですよね。
この方法であれば部分的に修正が簡単になります。

まず、適当な名前.phpのファイルを作って、サーバにあるテーマフォルダ内にFTP等でアップロードします。
(以下の例ではspot.phpとします)
spot.phpに表示させたいHTMLやphpを記述します。
以下をspot.phpの内容を表示させたいテンプレートに記述します。

<?php include( TEMPLATEPATH.'/spot.php' ); ?>

参考:融通の効かないアマゾンウィジェットの代わりを自作しちゃいましょう

いずれもプラグインを使わずに組み込める方法なので、wordpress本体をアップデートしても大丈夫。
表示をすこしコントロールするだけで、グっと自分だけのwordpressテーマに近づくと思いますよ。

低価格だけど比較的安定しているサーバでwordpressにオススメです!

WordPressスーパーカスタマイズ 3.2対応 ポテンシャルを100%引き出すテクニック
下野 宏 下野 理子
ソフトバンククリエイティブ
売り上げランキング: 76351

wordpressテーマを簡単な4つの構文でカスタマイズしちゃいましょう!

UPDATE: 2012.01.26
, , , ,




併せ読みに選ばれている
記事はこちらのようです

WordPressのセキュリティは大丈夫?まだまだ続く不正アクセスに対処しよう!

WordPressのセキュリティは大丈夫?まだまだ続く不正アクセスに対処しよう!

ボクのまわりでも実害が散見され始めたWordPressへの不正アクセス。被害に遭う前の対策はかならず施しましょう!

iTunesアフィリエイトをPHGへ書き換える前に、バックアップとリストアについて理解を深めましょう

iTunesアフィリエイトをPHGへ書き換える前に、バックアップとリストアについて理解を深めましょう

これからいろいろな方法でiTunesアフィリエイトリンクを書き換える方が続出すると思いますが、その前にバックアップについてもういちど考えてみませんか?

wordpressプラグインを12個使って運営しています

wordpressプラグインを12個使って運営しています

なにも目新しいところがないけど、当ブログで使ってるwordpressプラグインの一覧です。

《プラグイン17選》WordPressでブログを始めたい方へ捧げます《テーマ4選》

《プラグイン17選》WordPressでブログを始めたい方へ捧げます《テーマ4選》

WordPressでブログを始めようとしてる人、始めたけどもう少し手を加えたい人。 そうした方の参考になればと思い、ボクが活用しているプラグイン17本を纏めてみました。 あわせて今気になってるテーマを4つご紹介。

googleからのアクセス向上を狙ってAll in one SEOプラグインを調整してみた

googleからのアクセス向上を狙ってAll in one SEOプラグインを調整してみた

googleからのアクセス減少を機会にwordpressの設定を修正しました。 特にAll in one SEOプラグインは必要最小限に再設定。 はたして…

WordPressを使ってホームページを作るのに便利な無料のテーマや写真やアイコン3×3

WordPressを使ってホームページを作るのに便利な無料のテーマや写真やアイコン3×3

知人に頼まれてWordPressでブログを作るとき実際に活用させていただいてる、『テーマ』『写真』『アイコン』を無料利用できるページをそれぞれ3つ紹介しています。