WordPressで管理画面が真っ白になる不具合について
WordPressで管理画面が真っ白になる不具合が発生したので、備忘録として記しておきます。
1.事象の詳細
テーマを編集していて、「ファイルを更新」をクリックしたところ、突然管理画面が真っ白になりました。他のメニューに移動しても同様の事象す。ブラウザの履歴でテーマ編集画面を戻して加えた変更を削除しても回復しませんでした。
2.原因
この不具合が発生する原因はいくつかあると思いますが、切り分けたところ、今回の原因は、functions.phpに同じ名称の関数を間違って加えてしまったことが原因でした。
function get_post_type_template($template = '') {
…中略…
return $template;
}
add_filter('template_include', 'get_post_type_template');
function get_post_type_template($template = '') {
…中略…
return $template;
}
add_filter('template_include', 'get_post_type_template');
さらに切り分けたところ、同じパラメータのadd_filter()は重複しても問題ないようですが、get_post_type_template()が重複してしまったのがNGのようでした。中の処理やadd_filter()の起動に関係なく、関数名の重複だけでダメっぽいです。
まとめると、以下が管理画面を真っ白にできるコードです。
function foo() {}
function foo() {}
3.対処
functions.phpを一旦削除して管理画面にアクセスしたところ、正常に表示されました。その後、修正前のfunctions.phpを再度アップロードすれば回復しました。
Posted by yujiro このページの先頭に戻る
- Advanced Custom FieldsでGoogleマップが表示されない場合の対処
- WordPress 3.0 で「Ajaxified Expand Post NOW」の「more >>」がエラーになる不具合について
トラックバックURL
コメントする
greeting