自分の覚書を兼ねて投稿。
WordPressを使っていて、メディアライブラリにアップロードした画像が表示されないとか画像が挿入出来ない症状になっていてGoogleさんに散々聞きまくってもプラグインを外してみろの回答ばかりで的を得ておらず困っておりました。
そこでブラウザのWebデバッグ機能で追っかけてみると、admin-ajax.phpを使って画像を表示させている模様。つまりadmin-ajax.phpの動作に何か問題があるのでは無いかという事で調べていた所、やっと発見しました。
開発メモ@uehiさんの記事にまんまの説明がありました。
引用させていただきますと
メディアライブラリの選択ウィンドウの一覧はAjaxで一覧データのJSONを取得しているが、どうも環境によってはこのレスポンスヘッダのContent-Typeが「text/html」になってしまうことが原因で、正しく動作するにはこれが「application/json」である必要がある。
との事でした。Apache2やphp5のアップデートなどによって挙動が変わってしまった時に起こりやすい様でした。
修正を行うには、直接admin-ajax.phpファイルを書き換える必要があります。
書き換え対象ファイル
wp-admin/admin-ajax.php
修正前
@header( 'Content-Type: text/html; charset=' . get_option( 'blog_charset' ) );
修正後
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' ) ); }
ちなみにOSはDebian Linux 3.2.46-1、Apacheは2.2.22、PHPは5.4.4-14+deb7u9を使用しております。WordPressは、3.9.1です。比較的新しいバージョンでの情報というのが無いので役に立てばいいなー程度です。
ありがとうございました。こちらも同じ状況で困惑しておりましたが、こちらの情報通りに修正したところ見事に復旧しました。アドバイスありがとうございました。
>KTさん
受け売り情報ではありますが、お役に立ててよかったです。
私も同じ問題で苦戦しておりましたが、無事解決致しました。本当にありがとうございます。
>HKさん
お役に立てて何よりです!
ありがとうございます。
解決しましたm(_ _)m
ありがとうございます
サーバー移転してしまって
ここにきて初めて解決
本当に感謝です
どこも「プラグイン外してみて。」ばかりで、「やってるけど、できない~・・・」
と困り果てていたところ、ysnさんのサイトへたどり着きました。
わかりやすい対処法で、すぐに解決できました!
本当にありがとうございます。
先ほどコメントしましたが、消してくださいm(_ _)m
$menu関連を調べてみたら、function.phpに書いていた記述が原因だったみたいです…
add_action(‘admin_init’, ‘remove_menus’);
function remove_menus(){
if(!current_user_can(‘add_users’)){
remove_menu_page(‘jetpack’);
}
}
失礼しましたm(_ _)m
最新の4.1でも再現して悩んでまして助かりました。
WordPress 4.1.1 にて同じ現象が発生して、このページを参考にさせていただきました。
ありがとうございます。
その後調べてみたところ、
WordPressをインストールした上位ディレクトリの
.htaccess に記載してあった
——————————
php_value output_handler mb_output_handler
——————————
をコメントアウトしたところ、画像が表示されることを発見しました。
このコメントアウトは元に戻して、
WordPressをインストールしたディレクトリの .htaccess に
output_handler を上書きするように以下を追記したところ無事解決しました。
——————————
php_value output_handler none
——————————
これで admin-ajax.php を編集しなくても
メディアライブラリにアップロードした画像が表示され、
投稿に挿入できるようになりました。
ちなみに上位ディレクトリに .htaccessが存在しなくても
サーバーのPHPの設定で
output_handlerの設定がされている場合があります。
ご参考まで。
ピンバック: WordPressのメディアライブラリで画像が表示されなくなった | hayashi-rin.net
ピンバック: WordPressで画像挿入できない | カタカタ
ピンバック: メディアライブラリが表示されない!functions.phpの修正
ピンバック: 【画像アップ不具合】メディアライブラリがぐるぐる回って写真が表示されないトラブル | JMAS 株式会社ジェーエムエーシステムズ
ピンバック: 【画像アップ不具合】メディアライブラリがぐるぐる回って写真が表示されないトラブル | JMAS 株式会社ジェーエムエーシステムズ
ピンバック: 【画像アップ不具合】画像がアップロードできない | JMAS 株式会社ジェーエムエーシステムズ
ピンバック: メディアを追加が使えない!! | はねゆず.com
同じでした!サーバーのphp設定でした。オンにして.htaccessに
php_value output_handler noneを記述で。
画像しっかり入りました。functionsを記述ミスでは内容でした。
ありがとうございました。
ピンバック: カゴヤのサーバーで、wordpressのメディアライブラリが登録できない! | WEB ALPHA