FC2拍手を携帯サイト側にも表示する

2009年5月21日

WordPress の携帯電話対応としては現在 Ktai Style を利用しております。

携帯電話対応プラグインとしては、対応環境さえ揃っていれば最強なこのプラグイン、使うのに多少の慣れと、知識と、根性が必要になりますが、暇を見つけてカスタマイズしていったりしてます。

といっても Adsense を表示したり、各種プラグインの表示を組み込んだりと、基本的な部分の改造ですが。まぁ、手を入れなくても簡単に携帯対応できるので便利なんですよね。

で、以前もやって失敗した FC2 拍手の携帯対応をしてみました。

現在、通常 PC でのアクセス時に使用されているテンプレートの、拍手表示画面は WordPress 用にちょこっと手を入れて

<a rel="nofollow" href="http://clap.fc2.com/post/<ユーザID>/?url=<?php the_permalink(); ?>&title=<?php the_title(); ?>" target="_blank" title="拍手する by FC2">
<img src="http://clap.fc2.com/images/button/white/<ユーザID>?url=<?php the_permalink(); ?>" alt="拍手する" style="border:none;" /></a>

のようになっています。これをそのまま Ktai Style で使用しているテンプレートの single.php にでも書いてやれば動くかと思ったら、拍手のリンクをクリックしても「ページ作成ができません」というエラーが表示されて動作していない模様。

出力された HTML のソースを見てみると、どうやら で出力されるパーマリンクでドメイン名を含む部分が省略されていました ((表示を簡略化する動作をしてるみたいですね))。

https://www.u-1.net/hogehoge/ → /hogehoge/

みたいな感じですね。なので、手っ取り早いのは削除される部分を直接書いてやると。

<a rel="nofollow" href="http://clap.fc2.com/post/<ユーザID>/?url=https://www.u-1.net<?php the_permalink(); ?>&title=<?php the_title(); ?>" target="_blank" title="拍手する by FC2">
<img src="http://clap.fc2.com/images/button/white/<ユーザID>?url=https://www.u-1.net<?php the_permalink(); ?>" alt="拍手する" style="border:none;" /></a>

あとは、画像が表示されないと不便なので、プラグインの FAQ にあるAmazon の画像をそのまま表示したいを参考にfunctions.php にフック関数を追加してやればOK。

<?php
function ks_keep_externalsite_image($replace, $orig, $src) {
	// Amazon や G-tools 、 FC2拍手の画像を表示する
	if (preg_match('#^http://ecx.images-amazon.com/images/|^http://g-images.amazon.com/images/|^http://clap.fc2.com/images/', $src)) {
		$replace = $orig;
	}
	return $replace;
}
add_filter('image_to_link/ktai_style.php', 'ks_keep_externalsite_image', 10,3);
?>

ね、簡単でしょ?

……というか、マニュアル読めば気づいたネタでした。