Home » PHP, WordPress, プラグイン, プログラミング

「最近の投稿」一覧に新着アイコンを表示する  このエントリをはてなブックマークに登録 

[ 2010年04月27日 | No Comment | 0 Trackbackk ]


新着アイコンこのサイトをリニューアルして3ヶ月ちょっと経ちまして、たくさんの人に見ていただくようになりました。それに伴ないブックマークをして頂き定期的に閲覧してくださる方も増えてきたように思います。

このサイトの更新目標としては10件/月を考えていますが、その頻度は結構偏っていたりもします。なので、ブックマークから来ていただいた方にすぐに新着が確認出来るように、右側のカラムにある「最近の投稿」一覧に新着アイコンを追加しました。このアイコンは記事を追加してから3日間表示されます。


右側にある「最近の投稿」はWordPressの標準の機能ではなく「Customizable Post Listings」というプラグインを使用しています。標準の機能より色々な情報を表示させることが出来て便利なんですが、どうやらこのプラグインでは新着アイコンを表示させることは出来ないようなので、ちょっとだけカスタマイズしてみました。

個人的にはプラグインを直接書き換えるのは、そのプラグインがアップデートしたときなどに面倒なことになるので、あまり気が進まないのですが、このプラグインは最後にアップデートしたのが2年前とほぼ今後アップデートすることは無いだろうと思われるので直接ソースの一部に追記しました。

まず、このプラグインのメインファイル(下記参照)を開いて新着アイコンを表示させたい位置を出力している場所を確認します。これは出力している内容によって位置が異なります。私の場合は1127行目にそれがありました。

【カスタマイズしたファイル】

…/plugins/customizable-post-listings/customizable-post-listings.php

次に以下の関数をファイルの最後に追記しました。

function get_new_icon($post_date){
	$nowTimestamp = time();
	$postTimestamp = strtotime($post_date);
	$distanceTime = ((60 * 60) * 24) * 3;
	$imgURL = "/wp-content/kc_images/new.gif";
	$ret = '';
	
	if($nowTimestamp < ($postTimestamp + $distanceTime)){
		$ret = "&nbsp;<img src='".$imgURL."' width='29' height='13' alt='新着' style='border: 0; margin: 0; padding: 0' />";
	}
	return $ret;
}

直接該当箇所に記述してもいいんですが、後々のカスタマイズ性を考えて関数にしました。これであとは出力したい部分でこの関数を呼び出すだけなので簡単です。

今回は1127行目を下記のように追記しました。赤字が追記した部分です。

【オリジナル】
$new = ‘<a href=”‘.get_permalink().'” title=”View post ‘.wp_specialchars(strip_tags($title), 1).'”>’.$ntitle.'</a>';

【変更後】
$new = ‘<a href=”‘.get_permalink().'” title=”View post ‘.wp_specialchars(strip_tags($title), 1).'”>’.$ntitle.get_new_icon($post->post_date).'</a>';

私の場合は上記の場所に追記してアイコンが表示できましたが、設定によっては追記する場所が違うかもしれません。

ちなみにアイコンはネット上でフリーのものが沢山ありますが、今回は単純なものなのでPhotoShopとImageReadyで自作しました。

スポンサーリンク

 

  にほんブログ村 アウトドアブログ アウトドア用品へ 人気ブログランキングへ  

関連する(かもしれない)記事

Trackback URL

コメントを投稿する(承認後に表示されます)