WordPress4.0にバージョンアップしたら「メディアライブラリ」に何も表示されなくなってしまいました。併せて記事に「メディアを追加」しようとしても反応しなくなってしまった…。
あれやこれや解決策を探していたら、同じような症状の記事を見つけましたので参考にさせて頂いたところ、きちんと表示されるようになりました。
同じようなことでお困りの方がいらっしゃるかもしれませんのでメモしておこうと思います。
問題となっているファイルは「admin-ajax.php」というもので、下記部分を書き換える必要があるようです。
修正ファイル
1 |
wp-admin/admin-ajax.php |
修正箇所
1 |
@header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) ); |
修正後
1 2 3 4 5 |
if(in_array($_POST['action'], array('query-attachments', 'send-attachment-to-editor'))){ @header('Content-Type: application/json; charset=' . get_option('blog_charset')); }else{ @header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) ); } |
原因としては、メディアライブラリの一覧はAjaxで一覧データのJSONというものを取得しているようですが、Apacheやphpのアップデートなどによって、このレスポンスヘッダの「Content-Type」が「text/html」に書き替わってしまうことが原因によるようです。
少し難しい話ですが、念のためバックアップをしっかり取って、修正箇所を書き換えてみてください。私自身はこれで解決することが出来ました。