Die Ordnerstruktur von WordPress ist recht einfach. Auch das trägt zum Erfolg, neben den simplen bedienen und erstellen von Inhalten, sowie der Bedienerfreundlichkeit von WordPress bei. Jeder der mit WordPress arbeitet, sollte sich damit zurecht finden und diese Struktur sehr leicht verstehen. Wer allerdings tiefer in die Materie einsteigt wird irgendwann feststellen, dass es sinnvoll sein kann den wp-content Ordner von der restlichen Struktur abzulösen. Mögliche Gründe dafür könnte die Nutzung von GIT zur Versionverwaltung von WordPress sein, oder das einfache Updaten vom WordPress Core.

Dabei ist es gar nicht schwer den wp-content Ordner von WordPress auszulagern. Dafür sind folgende Schritte auf euren Webspace notwendig. Nutzt dazu einfach eure bevorzugten Programme.

  1. Auf der root Ebene wo euer WordPress liegt, einen Ordner erstellen. Den könnt ihr benennen wie ihr wollt, den Namen aber merken. Ich nutze zum Beispiel den Namen core
  2. Alle Dateien und Ordner, bis auf den wp-conten Ordner in den neuen Ordner verschieben
  3. erstellt auf der root Ebene eine Datei mit den Namen index.php. Diese enthält folgenden Inhalt:
    <?php
    define( 'WP_USE_THEMES', true );
    require( './core/wp-blog-header.php' );
    

    Entscheident ist hier die dritte Zeile. Bei den Pfad gebt ihr den neuen Ordner an, wo jetzt eure WordPress Dateien liegen. Bei mir ist das wie schon gesagt core.

  4. Kopiert aus eurem core Ordner, also dem neuen Ordner, eure wp.config.php in die root Ebene.
  5. Fügt dort die folgenden Zeilen ein. Im Normalfall könnt ihr diese so übernehmen wie sie hier stehen.
    // ========================
    // Custom Content Directory
    // ========================
    define( 'WP_CONTENT_DIR', dirname( __FILE__ ) . '/wp-content' );
    define( 'WP_CONTENT_URL', 'http://' . $_SERVER['HTTP_HOST'] . '/wp-content' );
    

Das wars auch schon. Eure Struktur sollte nun wie folgt aussehen.


core //Neuer Ordner mit den WordPress Dateien
wp-content //Der alte wp-content Ordner, der nicht kopiert oder verschoben werden sollte. Hier liegen alle Themes, Plugins und Uploads
index.php //Die neue index.php
wp-config.php //Die alte wp-config.php aus dem core Ordner, welche ergänzt wurde

Mit der neuen Struktur könnt ihr jetzt ohne Probleme den WordPress Core unabhängig von den Uploads und Plugins mit Git verwalten und aktualisieren. Oder mit einem FTP Programm oder per Terminal den WordPress Core mit einer neuen Version Updaten und dabei alle Dateien überschreiben, da wir ja alle Uploads ausgelagert haben. Sollte auch mal ein Serverumzug notwendig sein, benötigt ihr nur das wp-content Verzeichnis und die index.php sowie wp-config.php an Dateien übertragen. Das spart eine menge Zeit. Auch bei der Sicherheit hat das einen gewissen Vorteil. Sollte eure WordPress Installation mal kompromittiert sein, könnt ihr so ohne Probleme den Core Austauschen. Den in der Regel wird dort der Shadcode enthalten sein.

Zu dem Thema Git und WordPress und wie das eingerichtet wird, werde ich noch weitere Posts schreiben.