Plugin Notes
Allows you to add notes to plugins.
プラグイン一覧の画面で、プラグイン毎にメモを残せるプラグインです。
不具合の現象
プラグイン名が日本語のものだけ、「Edit note」などのリンクボタンが動作しないというものです。初めは、動作するものとしないものがあって、おかしいなぁと思ってたんですが今回しらべて「日本語名」だけというのがわかりました。
昔は、プラグイン名はすべて英語表示だった気がします。
解決方法
function _get_plugin_safe_name ( $name ) {
return sanitize_title($name);
}
↑ 修正前
↓ 修正後
function _get_plugin_safe_name ( $name ) {
//return sanitize_title($name);
return str_replace("%","",sanitize_title($name));
}
plugin-notes.phpを上記のように修正します。そうすると問題なく動くようになります。
補足
//プラグイン名が英語の場合
<a href="#" onclick="edit_plugin_note('throws-spam-away'); return false;" id="wp-plugin_note_editthrows-spam-away" class="edit">Edit note</a>
//プラグイン名が日本語の場合
<a href="#" onclick="edit_plugin_note('%e3%83%aa%e3%83%93%e3%82%b8%e3%83%a7%e3%83%b3%e3%82%b3%e3%83%b3%e3%83%88%e3%83%ad%e3%83%bc%e3%83%ab'); return false;" id="wp-plugin_note_edit%e3%83%aa%e3%83%93%e3%82%b8%e3%83%a7%e3%83%b3%e3%82%b3%e3%83%b3%e3%83%88%e3%83%ad%e3%83%bc%e3%83%ab" class="edit">Edit note</a>
リンクの部分をみると上記のようになっています。「%」という文字が、HTMLのclass名とかには使用できないということで、その部分がうまく動作しない原因になっているようです。この部分は、プラグイン一覧でユニーク(一意)であればよいので、変更しても問題は発生しません。
また、_get_plugin_safe_name()のあたりは、データの保存には使われていないことも確認しました。データの保存には、ブラグインのURL?のようなものをキーにして保存されてました。
ほかのプラグイン
Adds a column to the Plugins page where you can add, edit, or delete notes about a plugin.
プラグイン一覧でメモを残せるプラグインはほかにもあって、上記とかもあります。こちらは最終更新日は5か月前になっています。Plugin Notesとはレイアウトが違うので今回乗り換えませんでした。そのあたりが気にならないのなら、こちらも悪くないかもと思います。
スポンサーリンク