Delete Custom Fieldsは不用なカスタムフィールドを削除することが出来るプラグイン。
このDelete Custom Fieldsを使っていて、すべてのカスタムフィールドがプルダウンメニューに表示されないことがあった。
コンサデコンサ本宅では、CSプレイヤーズのデータベース部分にカスタムフィールドを使用していることもあって、設定してあるカスタムフィールド項目が非常に多くなっている。Delete Custom Fieldsのプルダウンメニューからカスタムフィールドを表示させると、全部表示されない。
不用なカスタムフィールドの削除には、phpMyAdminを操作して、直接SQLファイルから削除する方法もあるが、プラグインの方が簡便なので、原因を探ることにする。
どうも下記の部分が原因だったようだ。
delete-custom-fields/delete-custom-fields.php
[php]
function get_all_meta_keys( $include_hidden = false ) {
global $wpdb;
$limit = 100;
[/php]
Delete Custom Fieldsのソースコードをのぞいてみると、プルダウンメニューの表示数にリミットがかけてあるようで、デフォルトでは100。
limitを100から、200に増やしてみた。
そうしたら、プルダウンメニューに全部表示されるようになった。
なお、もう一つトラブル項目があって、Delete Custom Fieldsで削除処理を行っても、記事の情報は削除されるのだが、項目がプルダウンメニューから削除されないケースがある。原因はいまだ不明。