サポート » マルチサイト » 4.8のマルチサイトでメディアライブラリ画像が非表示

  • 解決済 kota1010

    (@kota1010)


    お世話になります。

    Ver4.4.1でマルチサイトを運営していて、4.8にアップグレードしたところメディアライブラリ内の画像がすべて非表示になってしまいました。サイトに表示しているアイキャッチ画像も非表示になっています。

    ファイルのURLは、

    ドメイン/子サイトトップフォルダ/wp-content/uploads/sites/子サイトのID/画像ファイル名

    が正しいものです。投稿内に入れた画像URLはこのように出力されていて表示されています。

    アイキャッチ画像のURLやメディアライブラリ内の画像URLは、

    ドメイン/子サイトトップフォルダ/files/画像ファイル名

    と出力されていて、404になってしまいます。

    マルチサイトの.htaccessは、管理画面の記述通りに.htaccessに

    # uploaded files
    RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

    を追加してあります。

    またこちらの投稿を見て、

    #uploaded files
    RewriteRule ^(.*/)?files/$ index.php [L]
    RewriteRule ^(.*/)?files/(.*) wp-includes/ms-files.php?file=$2 [L]

    にもしてみましたがうまくいきませんでした。

    ちなみにマルチサイト管理画面内の各サイト設定の「Upload Path」と「Upload Url Path」の欄は空欄のままです。

    プラグインもすべて停止しましたが状況は変わりませんでした。

    4.4.1から4.8の間に何か大きな変更でもあったのでしょうか。
    いずれにしろどうしたら解決できるか、ご教授のほどどうぞよろしくお願いいたします。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • CG

    (@du-bist-der-lenz)

    今回のアップデートの位置づけを認知していますか。マルチサイトにたくさんの関数や機能が追加、アクセシビリティーの向上、その他多くの改善が行われています。試しに 4.8 でマルチサイトを新規作成すると気がつくところがいろいろあります。わたしは 4.4系から 4.8に変更するステップは踏まないので、異常はありませんでした。系統変更の場合は新規作成して引っ越し作業しています。ですので問題解明のお役には立ちません。

    https://make.wordpress.org/core/2017/05/22/multisite-focused-changes-in-4-8/

    こんにちは

    ms-files.phpはWordPress3.5でデフォルト無効になっています。
    お使いの環境ではwp-content/uploads/sites/に画像が保存されていますので、この機能をお使いではないようです。
    .htaccessの記述も、ファイルはfilesディレクトリに保存されていないので、意味をなしていません。

    プラグインを全て無効にする、テーマをデフォルトのテーマに変更するなどして、それらが原因ではないかを確認してみてください。

    マルチサイトのネットワーク管理 (WordPress Codex 日本語版)

    をみると、3.5以前から、3.5以降へのアップグレードして使い続けている場合には
    > WordPress 3.5以降 マルチサイトを3.5以降に始めた場合に限ります。3.4から3.5にアップデートした場合は、古いバージョンのものを使用してください。
    とうことですね。
    なので一概に

    # uploaded files
    RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

    は間違いでない場合もあります。

    ただ何が問題かは分からないので、munyagu さんのご指摘のチェックや、サーバーのエラーログ(もし閲覧できるなら)で何かエラーがでていないかチェックしてみるとよいかと思います。

    kimipoohさん

    そうですね、filesがアクセスURLなのに勘違いしていました。

    トピック投稿者 kota1010

    (@kota1010)

    CGさん、munyaguさん、kimipoohさん

    ご回答いただいていたのにお返事もせず申し訳ございませんでした。

    とりあえずプラグインやテーマをデフォルトに戻すなどでは解決せず、最後の手段として無理矢理htaccessで直接フォルダを指定することでその場をしのいでいました(マルチサイトとはいえ実稼働中のサイトは一つだけだったので)。

    ですが今回の4.8.1アップデートをしたせいか、今度は新規にアップした画像類が表示されなくなってしまいました。

    ですのでまずはもう一度

    # uploaded files
    RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

    の記述に戻してみたところ、新規画像分は表示されるようになりました。
    ですので新規画像が保存されていたフォルダ内に過去の画像もアップし直したところ、すべての画像が無事表示されるようになり、解決しました。

    4.8.1のアップデートのおかげで解決したのかどうかはわかりませんが、とりあえず指定通りの記述でうまくいきましたので、これで解決とさせていただきます。

    ご助言ご協力、本当にどうもありがとうございました。

    CG

    (@du-bist-der-lenz)

    4.4系から 4.8系への無謀なアップデートが、4.8.1のアップデートのおかげで解決したのかもしれませんね。系統が更新になる時は、引っ越しと同じ手順を踏むのがゴミ出しにもいいと確信しました。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • トピック「4.8のマルチサイトでメディアライブラリ画像が非表示」には新たに返信することはできません。