はい、もはやなんのサイトだかよく解らなくなっているチラシの裏です。
WordPressを使っていて、デフォルトのパーマリンク設定でURLを設定している人はそう多くないのではないかと思うのですが(普通はクエリ方式避けますよね?)、そういう時に例えば固定ページ等のURLに日本語を含むマルチバイト文字が入ってURLエンコードされるとか、そういう所を気にする人がいるのです。
個人的には、日本語URLはべつにアリだと思うのでどうでも良いのですけれど(むしろ無作為採番等より余程いいと思っています)、クライアントの中にはそうではない人も居るわけで…。
Slugを英数字で設定すれば良いだけの事なのですが、毎度毎度タイトルを入力した後にSlugを別途入れてくれと指定しても守ってもらえるとは限らないうえに、もし自分で大量のページを作る等となった時に手動なんてめんどくさい訳です。
で、どうするかといえば、普通にやるならfunctions.php等に作りおきの関数をコピペするだけなのですが、中にはPHPのコードを見るのすら嫌な人も居る訳で…。
ということで、仕事でなんとなく作った簡素極まりない関数を物凄く単純にプラグイン化したというやっつけ仕事なこのプラグインを投げつけておくという結論に至りました。
前置きが長いですが、要するにプラグインの挙動としては、新規post時のSlug自動生成の際に、マルチバイト文字が入っていた場合は自動的に”post_type-post_id”の形式で生成し直してくれるというただそれだけのモノです。
WordPressの内部的な言い方をすると、post_statusが’draft’, ‘pending’, ‘auto-draft’の時に上記の動作をします。
つまり、記事公開後及び非公開状態、公開予約状態においては無効となるので、新規作成の時以外の場合は意図的にURLエンコードの入るマルチバイト文字を使用したSlugを設定することができるという事になります。
一応多言語対応になっているので、readme.txtやら用意すれば公式のプラグインディレクトリに投げる事もできるのでしょうが、なんせ英語リソース作るのが面倒なので多分余程暇じゃなければこのままになりそうです。
RA – Mod Multibyt Slug
2014 9/19 追記
WordPressの公式プラグインディレクトリに登録しました。
今後、ダウンロードはそちらから行なって下さい。