会社でも 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) のためらしいです。

広告

先日、社内の勉強会で JavaScript と Ajax をとりあげました。僕は勉強会用のプレゼンテーションスライドを HTML + JavaScript で自作してみたのですが、後で調べると、W3C 謹製の [HTML Slidy](http://www.w3.org/Talks/Tools/#slidy) や [S5](http://meyerweb.com/eric/tools/s5/) といった、XHTML + CSS + JavaScript でスライドを作れるものがあることを知りました。

そこで、HTML Slidy 形式のスライドを作成するウェブアプリケーションを作ってみようと、Ruby on Rails で作り始めたのですが、よく考えると CMS としては WordPress があるんだから、ブログの記事からスライドを出力すればいいじゃん、と思い直して、WordPress プラグインとして仕立て、[WP-Slidy](/works/wp-slidy/) と名付けてみました。

サンプルは[wps]こんな感じ[/wps]です


#WP-Slidy
##2007 hara

#WP-Slidy とは
* WordPress プラグイン
* WordPress の記事からスライドを作成
* スライドは W3C の HTML Slidy 形式

#ねらい

* ブログの記事でプレゼンする
* むしろプレゼン内容を記事にする
* プラグインの勉強

#でも初めてのプラグインなので

* 作り方がよくわかっていない
* バグがあるかもしれない
* そもそも、HTMLファイルを手で書いた方が早いかもしれぬ

#改善点

* URL をリライトして /slide とかでアクセスしたい
* もっと記法を簡単にしたい
* その他色々