定型文が手軽に使えるプラグインをリリースしました。

2015.08.25(火) WordPress, プラグイン
このエントリーをはてなブックマークに追加

ひさびさに本以外の投稿ですが、HTMLエディターにて、定型文(挨拶文とか、決まり文句とか、htmlタグとか…)を登録して利用できるプラグイン、「BoilerplateStatementEditor」をリリースしました。使い方などは、こちらを見てください。
今回は、WordPress公式ディレクトリへの正式登録でいくつかひっかかったところなどがあったので、簡単に紹介しておこうかと思います。


Step1.基礎中の基礎、$_POSTのサニタイズから

前回、「LessonScheduler」を登録したときは、数時間後にはOKの連絡が来たので、今回もそんな感じでくるだろうと思っていたのですが、プラグイン登録数などが結構あったのでメールが来たのは3日後。そしてその内容が、「There are issues with your plugin code.」から始まっている、これは。。。


そうです。ソースに問題があってリクエストが受け付けられなかったというメールです。そしてその内容は。

## Please sanitize and validate your POST calls
You are not properly sanitizing your POST/GET/REQUEST calls.

ちょっと、ホッとしました。なあーんだ。そうだよね、$_POSTサニタイズしとかないと、SQLインジェクションとかやられちゃうよねということで、速攻直す。メールには親切にも以下を見ろと記載されていたので、そこに記載されている「sanitize_text_field」を$_POSTにかませればOKなはずだ。

Please review this document and update your code accordingly: http://codex.wordpress.org/Validating_Sanitizing_and_Escaping_User_Data

そして、メールにはこう書かれている。

Please make sure you’ve addressed ALL issues brought up in this email. When you’ve corrected your code, reply to this email with the updated code attached as a zip, or provide a link to the new code for us to review.

「このメールにある問題を直したら、コードをzipで添付してこのメールに返信してください」ってことだと思うので、つたない英語でとりあえず返信してあとは待つのみ。と思ってたのですが、なぜかこのメールには返信が来ず、結局リジェクトされた旨メールが来ました。。。うーん、なんか間違ってたんでしょうか?


そんな場合どうするかというと、もう一度新規で申請すればいいだけなんですけどね。ということであきらめず申請することに。

Step2.関数名をオリジナルにせよ

申請して今度は確か2日くらいでメールが来たのですが、またしても「There are issues with your plugin code.」から始まっている。。。次の内容はこんな感じでした。

## Generic function (and/or define) names
All plugins should have unique function names, defines, and classnames. This will prevent your plugin from conflicting with other plugins or themes.

関数名はほぼオリジナルだったんですけど、グローバル変数だとか「wp_enqueue_script」に渡すようなハンドル名などがオリジナルじゃなかったので、とりあえず全部にプラグインの接頭文字つけて対応しました。

あと、それに関連して、プラグイン用のccsの呼び出しを「admin_head」のアクションフックでechoしていたのですが、「admin_print_styles」のアクションフックで「wp_enqueue_style」するようにしました。

ということで、ソース修正してメール返信したんですが、なぜかこれまた届かず。一応、前のメールには、

PLEASE PRESS REPLY IN YOUR EMAIL – We just found your previous email. It had no subject so it was treated as spam. Please leave the subject line intact.

タイトルがなかったのでスパム扱いになった、みたいな感じのことが書いてあったので注意して送ったんですけどね。まあ、Windows8の怪しい標準メーラ使ったからかな?とりあえず、またリジェクトされましたが、最申請でようやく申請が受理されました。

で、ようやくこのブログにプラグインを入れようとしたんですが、なんと動かない!!!そう、このプラグイン用のボタンを出すのに、「QuickTagsAPI」を使っているのですが、それがWordPress3.3から利用できるんですが、サーバーのPHPバージョンのおかげでこちらのブログは3.1なので。。。
いや、いちいちBootstrapのクラス名とか入れるの面倒だとか思って作ったのに、トホホ。まあ、誰かに使ってもらえればと思います。

コメントをどうぞ