web-dev-qa-db-ja.com

カスタム「アップロード」ディレクトリ:メディアライブラリの「画像の編集」が壊れている

ディレクトリ構造

私は自分の(ローカル)インストール(devボックス)をカスタマイズしました。現在のディレクトリ構造は次のとおりです。

 ./root
  |- wp (WordPress Core root)
    \
    |- wp-config.php
  |- wp-content (Content and Vendor root)
    \
    |- mu-plugins (...)
    |- themes (...)
    |- plugins (...)
    |- uploads (Custom uploads dir)
    |- vendor (Composer installed libraries)
  |- index.php (loads ~/wp/index.php > require( dirname(__FILE__).'/wp/wp-blog-header.php' ); )

設定

私のwp-config.phpには、次のような設定があります。

define( 'WP_SITEURL',      'http://example.dev/wp' );
define( 'WP_HOME',         WP_SITEURL );
define( 'WP_CONTENT_DIR',  './../../wp-content' );
define( 'WP_CONTENT_URL',  'http://example.dev/wp-content' );
define( 'WP_PLUGIN_DIR',   '../../wp-content/plugins' );
define( 'WP_PLUGIN_URL',   WP_CONTENT_URL.'/plugins' );
define( 'WPMU_PLUGIN_DIR', '../../wp-content/mu-plugins' );
define( 'WPMU_PLUGIN_URL', WP_CONTENT_URL.'/mu-plugins' );

これは単一サイトのインストールであり、次の定数は定義されていません(したがってデフォルトに戻ります):UPLOADBLOGSDIRUPLOADSBLOGUPLOADDIR

フィルター

@Sven(Hofmann)がチャットで私に尋ねたように:*_urlフィルターで動く唯一のプラグインは新しいテーマディレクトリを設定する一つのmuプラグインです:

add_filter( 'theme_root_uri', 'switch_theme_root_local' );
add_filter( 'theme_root',     'switch_theme_root_local' );

ご覧のとおり、内部のURlと競合する可能性のあるものはありません。

問題

ステップ1) "Media Library"を開いて添付ファイルをクリック/開くと、モーダルは通常通りに開き、メディアファイル(または問題のある場合は画像)が表示されます。

Attachment Details - WordPress Media Library

ステップ2) "Edit Image" リンクを押すと、次の画面(モーダル置換)が表示されます。壊れた画像に注意してください。私は、elと属性/パスを表示するためにChromes devツールを開きました。

Editing an Attachment - WordPress Media Library

私はこれをどうやってデバッグするのか、そして/またはOriginが壊れたリンクがどこにあるのかわからない。私はこれが burried WordPressの最も文書化されていない部分のどこかにあると思います:メディアライブラリのためのJavaScriptテンプレート。

7
kaiser

アップロードディレクトリは、wp-configに独自の定義があります。

define( 'UPLOADS', WP_CONTENT_URL.'/customuploads' );

1
AJ Zane