WordPress からリンクできる URL のスキームを増やす
2007/07/22
会社でも WordPress を使った社内ブログを管理しているのですが、「記事からリンクが張れないんだけど」という意見を貰いました。聞いてみると、`` タグで `http://~` などではなく、独自プロトコルの URL にリンクを張りたいんだけど、記事を入力して保存したら URL が消えてしまうとのこと。
調べてみたところ、’/wp-include/kses.php’ の中で、記事を保存する際に、妙なプロトコルへのリンクの場合は URL を消しちゃうというフィルタが設定されていました。利用可能な URL スキーム(プロトコル)は kses.php の中にハードコーディングされていたので、そのときには kses.php にスキームを追加して対処しました。変更点は こんな感じです。
ここで終わらせてもよかったのですが、解決策が汚くて好みじゃないのと、勉強のために、[URL スキームを管理するプラグイン](/works/wp-urlschemes)を作ってみました。動きとしては、管理画面からスキームを登録しておき、kses.php が設定するフィルタを無効にして独自のフィルタを設定しています。
管理画面とデータベースにタッチしたので、そのあたりの動きが何となくわかった気がします。日本語の情報が少なかったので、今度ざっくりまとめてみようと思います。
というわけで、需要があるかどうかは不明ですが、とりあえず作ったので配布してみました。ちなみに社内ブログでリンクしたかったプロトコルは[この Firefox プラグイン](http://firefox.geckodev.org/index.php?Custom%20Buttons) のためらしいです。