使用しているWordPressはPermaLink用に投稿タイトルを投稿スラッグ(Slag)という物を自動で生成するが、タイトルを日本語にすると文字化けが起こる。

せっかくのPermaLinkなのになんのこっちゃ分からんURLになるのは嫌だし手動で打ち込むのもめんどいので、ちょい調べてみた。

function-formatting.phpの中の関数sanitize_title_with_dashes($title)が非常に怪しい。
関数のアタマに日本語をローマ字に変換するコードをはさんでやればいいんじゃないかと。

で日本語-ローマ字変換用にKakasiを入れてコマンドラインでテストしてみた。

$ echo ”感じテストです” | kakasi -Jaj -Haj -Kaj
kanjitesutodesu

うまくいきそう。

これをpopenなんかで処理しちゃえば、ええ感じになるんじゃなかろうか。
そもそもUTF-8ならURLエンコードしてくれるのかな?どっちにしろ可読性のあるものじゃないのでローマ字になった方がうれしい。

ところでこんな使い方でpopenでいいんかなぁ、OS Command Injectionってヤツ?もうちょっと調べるかぁ。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です