it-swarm.com.de

Wie verwende ich Wordpress Multisite mit verschiedenen Domainnamen?

Ich möchte mit WordPress Multisite arbeiten, möchte aber meine eigenen Namen verwenden können. Zum Beispiel heißt meine Hauptseite example.com. Wenn ich meinem Netzwerk mit mehreren Standorten eine neue Site hinzufügen möchte, heißt sie newsite.example.com. Ich möchte, dass es newsite.com ohne example ist. Gibt es einen Weg, dies zu erreichen?

Ich habe von Domain Mapping mit einem Plugin gehört, weiß aber nicht, ob dies für diese Frage relevant ist. Wenn es relevant ist, würde ich gerne wissen, was genau das ist.

16
Kevin.a

Es scheint immer ein bisschen Verwirrung zu diesem Thema zu geben. Vielleicht könnte WordPress die Benutzer in diesem Prozess besser führen. Ich nehme jedoch an, dass Multi-Site nicht für TLDs vorgesehen war.

Zuallererst würde ich WordPress installieren , Multisite einrichten und es als Subdomain-Netzwerkkonfiguration konfigurieren.

Hier ist eine Beispielkonfiguration für Ihre wp-config.php-Datei im Basisverzeichnis Ihrer WordPress-Installation:

/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', true );
define( 'DOMAIN_CURRENT_SITE', 'www.primary-domain.com' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );

Hier ist die Grundkonfiguration für Ihre .htaccess-Datei als Subdomain-Konfiguration im Basisverzeichnis Ihrer WordPress-Installation:

# BoF WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ wp/$1 [L]
RewriteRule . index.php [L]

# EoF WordPress

Damit TLDs nun ordnungsgemäß funktionieren, musste ich die wp-config.php-Datei wie folgt konfigurieren:

define( 'COOKIE_DOMAIN', '' );
define( 'ADMIN_COOKIE_PATH', '/' );
define( 'COOKIEPATH', '/' );
define( 'SITECOOKIEPATH', '/' );

Das wars mit den WordPress-spezifischen Konfigurationen.

Persönlich möchte ich einen virtuellen Apache-Host für die Primärdomäne im Netzwerk haben und dann diesen virtuellen Host mit Aliasdomänen konfigurieren. Jede Aliasdomäne ist eine der zusätzlichen Sites in Ihrem Netzwerk.

Wie auch immer Sie am Setup arbeiten, Sie müssen den DNS jeder Domain auf denselben Webserver auflösen und jede Domain auf dasselbe Verzeichnis verweisen, in dem die primäre Domain mit WordPress installiert wurde. Jede Domain in Ihrem Netzwerk muss auf denselben Webserver mit DNS-Einträgen verweisen und denselben Verzeichnispfad für die von WordPress verwendeten Dateien verwenden.

Sobald Sie alles richtig konfiguriert und eingerichtet haben, wie oben beschrieben. Melden Sie sich in Ihrem WordPress-Administrationsbereich an und navigieren Sie zum Administrationsbereich des Netzwerks, um Ihrem Netzwerk eine neue Site hinzuzufügen.

Wenn Sie eine Website hinzufügen, werden Sie dazu aufgefordert, die Website so hinzuzufügen, als wäre sie eine Unterdomäne unter Ihrer Primärdomäne. Rollen Sie einfach mit. Geben Sie vorübergehend etwas ein.

Sobald die Site hinzugefügt wurde, finden Sie sie in der Liste der Sites in Ihrem Netzwerk. Klicken Sie auf dieser bestimmten Site auf Bearbeiten. Jetzt können Sie den Domainnamen dieser Website zu 100% ändern. In diesem Fall würden Sie den tatsächlichen Domainnamen für diese TLD-Site eingeben.

Ich weiß, es ist ein bisschen trickreich, es so zu machen, aber es funktioniert und Sie müssen keine Plugins verwenden.

20
Michael Ecklund

Es ist seit einigen Releases ohne Plugin möglich (kann mich nicht an die konkrete Version erinnern, aber das Feature ist schon eine Weile da). Wenn Sie jedoch von vorne anfangen, sollten Sie WordPress Multisite im Subdomain Modus installieren.

Sie müssen eine Haupt-URL (wahrscheinlich kevin123.com) als Haupt-URL für das Netzwerk (Multisite) deklarieren. Dies ist in wp-config.php in der Konstante DOMAIN_CURRENT_SITE gespeichert, und auf der Site (früher als "Blog" bezeichnet), die diese Domain als Home-URL verwendet, muss die ID in BLOG_ID_CURRENT_SITE gespeichert sein. Dies ist jedoch während des Standardinstallationsprozesses so ziemlich Standard.

In WordPress können Sie nur die Subdomain angeben, wenn Sie eine neue Site erstellen . Nachdem die Site erstellt wurde, können Sie sie bearbeiten und einen völlig beliebigen Wert für die Site-URL hinzufügen. Ich habe es vor einiger Zeit in dieser Antwort mit einigen Screenshots beschrieben: Sind verschachtelte Subdomains mit einer Subdomain Multisite möglich?

Möglicherweise müssen Sie auch die Konstante COOKIE_DOMAN auf einen leeren Wert in Ihrem wp-config.php setzen:

define( 'COOKIE_DOMAIN', '' );
4
David