cforms Ⅱ が日本語に対応

WP Plugins の cforms が日本語に対応していました。
あっちこっちハードコードされている記述を修正しないと日本語対応のメールが送信できなかったのが、修正しないで送信できるようです。

どのバージョンからかは定かでは無いですが、10.5以降であれば良さそうです。

大幅なコードの見直しが行われており、ハードコードされていた記述はクラス参照に書き換えられていました。
mbstring関数が存在すれば…というようなif分岐が使われていて、問題なく日本語が送信者、タイトル、本文に使えるようです。

ただ、Wordpress のプラグイン管理からは外れているので使用するには少々勇気がいります。
なんでなんでしょうねー

コメント項目をカスタマイズしたりするのには便利に使えそうです。

WordPress, wp-jrelated 1.50 で Warning

wp-jrelatedを関連記事を表示するのに利用している。
http://wppluginsj.sourceforge.jp/wp-jrelated/

Yahoo! Japan が提供する「日本語形態素解析Webサービス」を使って投稿の内容を分析し関連する投稿などを表示します。

バージョンを1.50にするとWarningが出るようになってしまった。
注意書きに、関数の引数を変えたとあったのが原因かと思うのだけど・・・

“WordPress, wp-jrelated 1.50 で Warning” の続きを読む

WordPress プラグイン Event Calendar 3 の言語ファイルを作る

イベントを管理しカレンダーに表示してくれるプラグイン Event Calendar 3 の言語ファイルを作った。

Event Calendar 3 は投稿にイベント日時を追加して管理するプラグイン。
投稿が無ければイベント日時を登録できない。
ウイジェットも付属する。

イベントだけのカレンダーを表示したり iCal ようのファイルがダウンロードできたり・・・
運用を工夫すると休業日の表示ができたりすると思う。

あるサイトの開発に使用した。
クライアントオーダーでプラグインの改造を余儀なくされたが、基本的な機能には多いに助けられた。

日本語化のために言語ファイルを作成した。
作成時点のバージョンは3.1.2、現在の3.1.4でも問題ないようだ。
せっかくなのでダウンロードできるようにしてみた。

作成には Poedit を使用。
圧縮には MacZip4Win を使用。

リンク先からダウンロードし解凍後、フォルダ内のファイルを Event Calendar 3 プラグインフォルダ内 gettext フォルダへアップロード。
ファイル名を ec3-ja.* へ変更。

ダウンロード

WordPress cforms プラグインってイケテルの?

カスタムフォームを作れる cforms が人気のプラグインらしい。

確かにDBへデータを保存したりなかなか高機能。
日本語言語ファイルもあるのでかなり便利。

ただ日本語環境だといくつか問題がある。

メールSubjectはかなりの確率で文字化けを起こす。
コードが日本語Subjectを考慮していないのが原因。

送信者名は “ブログタイトル” になるようにプログラムされているが「ブログタイトル」に日本語を使うと文字化けを起こす。

メール本文は WordPress の charset になるので UTF-8 になる。
今はUTF-8でメールを送信してもほとんどのメーラーは問題なく受信できるので、まっイイカとあきらめる。

メールSubjectの文字化けはコードを修正しなければならない。

// lib_aux.php
function encode_header ($str) {
	$x = preg_match_all('/[\000-\010\013\014\016-\037\177-\377]/', $str, $matches);
 
	if ($x == 0)
		return ($str);
	return mb_encode_mimeheader($str,'ISO-2022-JP');
}

関数 encode_header を修正した。
マルチバイトに対応していない部分を全て削除した。
セキュリティ面にどんな影響が出るのか読めない。

送信者の文字化けは

$frommail = '"'.get_option('blogname').'" <wordpress@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME'])) . '>';

を下記のように修正した。

$frommail = '"'.mb_encode_mimeheader(get_option('blogname'),'ISO-2022-JP').'" <wordpress@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME'])) . '>';

ただ、このコードあっちこっちにハードコードされているのでいちいち修正するのが面倒くさい。
せめて関数化してくれていると良かったのに、と思ったりする。

メール本文の文字コード指定もあっちこっちにハードコードされてたりして、イタダケナイと思う。

アップデートも頻繁に行われ、Wordpress のバージョンアップにもいち早く対応しているなど、高機能のプラグインをメンテナンスし続けてくれて感謝!
2バイトな(UTFなのでマルチバイトって言った方がよいのかな?)日本語なんて知らない人が作っているからしょうがないよネな、良くある話。

WordPress the_contentをHookしてwp-hatenaを追加する

wp-hatena は「はてなブックマーク」などに追加するリンクタグを挿入できる。

ただ、テンプレートにタグを打ち込まないといけないのがめんどうだったので functions.php に Hook を作ってみた。

// bookmark icon
function hatena_bookmark_icons(){
	global $wph;
	if(isset($wph)) {
		echo '
 
';
		$wph-&gt;addHatena();
		$wph-&gt;adddelicious();
		$wph-&gt;addLivedoor();
		$wph-&gt;addYahoo();
		$wph-&gt;addFC2();
		$wph-&gt;addNifty();
		$wph-&gt;addPOOKMARK();
		$wph-&gt;addBuzzurl();
		$wph-&gt;addChoix();
		$wph-&gt;addnewsing();
		echo '
 
';
	}
}
add_action('the_content', 'hatena_bookmark');
function hatena_bookmark ($content){
	if ( !is_feed() && function_exists( "hatena_bookmark_icons" ) ) hatena_bookmark_icons();
	return $content;
}

テンプレート the_content(); しているところで投稿データの前に表示される。
Hook って便利だ。

Function Reference/add action

update
Feed にもブックマークアイコンが表示されていたので修正した。

WordPress, ShadowBox JSプラグインでFlash(swf)再生

2008-12-03 http://www.inazumatv.com/contents/archives/1276

WordPressのイケテル プラグインShadowbox JSを使ってFlash再生。

Shadowbox JSは良くできたプラグインで画像の時は勝手に処理をしてくれる。
Space Invaders again なつかしゲームで遊んでみた


<a title="some title" rel="shadowbox;width=N;height=N" href="path to swf"></a>

title
入れるとコンテンツ上部に表示。
rel
shadowbox;width=swf width(px);height=swf height(px)
href
swfまでのパス

後は勝手にShadowBox JSがしてくれる。

プラグインShadowBox JSはShadowbox.jsを使用している。
Shadowbox.js by Michael J. I. Jackson

WordPress用Flash関連Pluginリスト

2008-11-13 http://www.inazumatv.com/contents/archives/1144

Lemlinh.comFlash articles | Flash in WordPress plugin

WordPressで使えるFlashなPluginをリストアップし解説している。

画像ギャラリー
NextGEN Gallery
http://wordpress.org/extend/plugins/nextgen-flashviewer/
Download

NextGEN-FlashViewer
Download

NextGEN-ImageFlow
Download

Page Flip WordPress Plugin
Download

Flickr Gallery wordpress plugin
Download

SimpleFlickr
Download

サウンド再生
Audio Player WordPress plugin
Download

Flash MP3 Player
Download

ビデオ再生
WordTube WordPress plugin
JW FLV MEDIA PLAYER 4.1を使ってる。
www.jeroenwijering.com
Download

pb-embedFlash WordPress plugin
Download

WP-SWFObject
Download

Embed QuickTime
Download

AFC FLV-Player
Download

Post videos and photo galleries
Download

その他
AFC Google Map
Download

AIR Badge
Download

WP-Cumulus
Download

CHAT Users and Design Integrated (BoWoB)
Download

RSS FEED anywhere
Download

WP FLASH TITLES PLUGIN
Download