Custom wp-content und Upload-Verzeichnis

Ich habe ein einzelnes Verzeichnis / mehrere Websites WordPress Setup eingerichtet. Und es hat auch funktioniert. Für einige Zeit. Es funktioniert immer noch, aber für ein Problem. Der Bildupload funktioniert nicht ordnungsgemäß.

Ich erkläre es.

Setup: – 1. Ein Master-Verzeichnis mit voller WordPress-Installation. 2. Ein Verzeichnis für die Client-Site – sagen wir client1. Hier ist die vollständige Ordnerstruktur in public_html

-MasterDirectory -client1 -wordpress -> MasterDirectory/wordpress -wp-config.php -wp-content -plugins -> MasterDirectory/wordpress/wp-content/plugins -themes -> MasterDirectory/wordpress/wp-content/themes -uploads 

3. Master-Installation wp-config.php bearbeitet, um nur zu enthalten

 $site_directory = dirname($_SERVER['DOCUMENT_ROOT']); define('WP_CONTENT_DIR', $site_directory . '/wp-content'); define('WP_CONTENT_URL', 'https://' . $_SERVER['SERVER_NAME'] . '/wp-content'); // load site-specific configurations require_once dirname($_SERVER['DOCUMENT_ROOT']) . '/wp-config.php'; 

Ich habe Rat von hier genommen .

  1. Ich habe client1 / wp-config.php erstellt und korrekt aktualisiert.
  2. Fired up WordPress und es funktionierte reibungslos.
  3. Jetzt, wenn ich ein Bild hochlade, wird es korrekt auf client1 / wp-content / uploads / 2017 hochgeladen …. Wenn ich es jedoch lade, wird 404 angezeigt. Auch in der Medienbibliothek sind keine Miniaturbilder sichtbar (fehlende Bilder) ). Lustigerweise, wenn ich auf die Schaltfläche Bild bearbeiten klicke, ist das Bild sichtbar.

Versuchtes Debuggen bis jetzt 7. Das Server-Log zeigt an, dass es versucht, nach dem Image in MasterDirectory / wordpress / wp-content / uploads / 2017 / …. statt nach client1 / wp-content / uploads / 2017 / zu suchen. … 8. Ich habe getestet, was die WordPress-Werte sind, indem ich den Inhalt von wp_upload_dir(); überprüfe wp_upload_dir(); . Alle erwarteten Werte werden zurückgegeben.

 path=public_html/client1/wp-content/uploads/2017/01 url=https://example.com/wp-content/uploads/2017/01 subdir=/2017/01 
basedir=public_html/client1/wp-content/uploads baseurl=https://example.com/wp-content/uploads error=

Ich habe den ganzen Sonntag damit verbracht, die Anomalie herauszufinden, kann aber das Problem nicht finden, warum der Server nach einem Bild in MasterDirectory sucht, wenn die WordPress-Variablen / -Konstanten korrekt gesetzt sind.

Die Website verwendet standardmäßig das Thema Twenty Seventeen Theme bis Child Theme. Es sind keine Plugins aktiviert, obwohl einige Plugins im Ordner “Plugins” gespeichert sind. Thema

Die Frage ist lang, als ich versuchte, das Maximum zu erklären.

Danke für deine Zeit Leute.

Solutions Collecting From Web of "Custom wp-content und Upload-Verzeichnis"

Sie können versuchen, eine weitere Zeile in wp-config.php hinzuzufügen

 define('UPLOADS', '$site_directory . '/wp-content/uploads'); 

Sie müssen dies hinzufügen, bevor require_once(ABSPATH.'wp-settings.php');

Wenn du sie nicht gewinnen kannst, schließe dich ihnen an!

Also nach ein wenig (und dann noch mehr) drehte die ganze Idee. Früher habe ich versucht, das Uploads-Verzeichnis an einen anderen Ort zu verschieben. Aber das Setup war widerwillig dabei, die Uploads immer zum Master-Verzeichnis zu machen. Also habe ich WordPress Verhalten beigefügt.

Ich habe ein Verzeichnis erstellt in -> public_html/MasterDirectory/wordpress/wp-content/client1/ . Ein anderes Verzeichnis im Verzeichnis client1 -> public_html/client1/uploads . Dann symlinked public_html/client1/uploads uploads auf public_html/client1/uploads public_html/MasterDirectory/wordpress/wp-content/client1/

Während also das WordPress in symlinked Verzeichnis auf Master Directory /../../ uploads hochlädt, wird es tatsächlich zu client1 /.././ uploads.

functioniert bei mir.