Multisite verwendet Sprachcode als Unterverzeichnis

Ich habe WordPress im Unterverzeichnis /de installiert und Multi-Site-functionen aktiviert. Der mysite.de/de hat die URL / Pfad: mysite.de/de

Jetzt möchte ich eine zweite Seite für die englische Sprache mit der folgenden URL mysite.de/en : mysite.de/en

Aber nachdem ich die Site hinzugefügt habe, wurde das Unterverzeichnis für die englische Seite wie mysite.de/de/en eingestellt: mysite.de/de/en

Irgendwelche Ideen, wie ich diese Website-URLs bekommen kann?

 mysite.de/de mysite.de/en mysite.de/fr 

Solutions Collecting From Web of "Multisite verwendet Sprachcode als Unterverzeichnis"

Hier ist eine richtige Multisite-Lösung:

Installieren Sie WordPress direkt auf der Wurzel Ihrer Domain mysite.de . Danach richten Sie eine Multisite ein und wählen die Subdomain- Option (Ja, Subdomain! Es ist viel flexibler und Sie können es auch mit Unterverzeichnissen verwenden).

WordPress wird Sie bitten, wp-config.php und .htaccess zu aktualisieren. wp-config.php Sie zu der wp-config.php die folgenden Konstanten hinzu (zusätzlich zu der von WP bereitgestellten)

 define( "COOKIEDOMAIN", "" ); define( "ADMIN_COOKIE_PATH", "/" ); define( 'SITECOOKIEPATH', '/' ); 

Verwenden Sie nicht den von WordPress bereitgestellten .htaccess-Code, sondern verwenden Sie stattdessen diesen:

 RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # add a trailing slash to /wp-admin RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L] 

Wechseln Sie zum Netzwerkadministratormenü und erstellen Sie zwei Websites, eine für jede Sprache. Sie werden nach der Adresse der Website (Subdomain) gefragt. Geben Sie einfach de für die deutsche Seite und en für die englische ein. Nachdem die Site erstellt wurde, bearbeiten Sie sie direkt. Jetzt können Sie die vollständige URL bearbeiten. Einfach auf http://mysite.de/de und http://mysite.de/en einstellen. Tun Sie dies auch für die französische Seite.

Jetzt haben Sie vier Standorte in Ihrem Netzwerk, wahrscheinlich mit den folgenden IDs:

 1 mysite.de/ 2 mysite.de/de 3 mysite.de/en 4 mysite.de/fr 

Da Sie den ersten nicht benötigen, können Sie ihn einfach leer lassen. Du benutzt es einfach nicht. Verwalten Sie Ihre Inhalte in den anderen drei Websites.

Um Anfragen an mysite.de/ umzuleiten, mysite.de/ eine weitere Zeile zu Ihrem .htaccess über den anderen hinzu:

 RedirectMatch permanent "^/$" http://mysite.de/de 

Sie haben nun ein voll funktionsfähiges Netzwerk mit zwei aktiven Websites für Ihre Inhalte.

Endlich eine persönliche Empfehlung: Es gibt ein kostenloses Plugin namens Multilingual Press , das dieses Konzept eines mehrsprachigen Setups in einem Netzwerk unterstützt. Disclosure: Ich habe vorher zu diesem Plugin beigetragen und arbeite für eine Firma, die dieses Plugin entwickelt.

Es wäre viel einfacher, den Blog mit einem guten WordPress-Übersetzungs-Plugin zu pflegen.

WPML ( http://wpml.org ) ist mein Lieblings-Plugin für die Aufgabe. Wenn Sie nichts bezahlen möchten, ist QTranslate auch eine gute Option.

Beide Plugins erlauben es, Subdomains (en.mysite.de) oder Sprachordner (mysite.de) zu haben.

Viel Glück!