web-dev-qa-db-fra.com

Des sous-domaines imbriqués sont-ils possibles avec un sous-domaine multisite?

J'ai actuellement une configuration multisite utilisant des sous-domaines, qui fonctionne bien jusqu'à présent:

example.com (main site)
site1.example.com 
site2.example.com
site3.example.com

La question est maintenant de savoir s'il est possible d'ajouter un nouveau site séparé en utilisant l'URL

en.site1.example.com

Lorsque j'essaie de créer le site sur mon réseau, le message d'erreur s'affiche.

Missing or invalid site address

Le multisite est-il conçu pour fonctionner avec une configuration comme celle-ci?

6

A présent, c'est possible sans plugin. WordPress vous permet de modifier un domaine et un chemin de sites sans aucune restriction une fois qu'il est créé.

Tout d'abord: créez un nouveau site avec un sous-domaine arbitraire mais valide:

Add a new site

Une fois le site créé, suivez le lien "modifier le site" dans le message de confirmation. Ici, vous pouvez modifier le domaine et/ou le chemin en votre propre nom. (Les règles de réécriture par défaut d'une installation de sous-domaine ne fonctionnent pas avec un chemin autre que /.) Dans votre cas, remplacez le domaine par en.site1.example.com. Conservez l'option "Update siteurl et home également." Cochée!

Change the sites URL

Bien sûr, vous devez vous assurer que le sous-domaine sera résolu pour l'hôte qui dirige votre installation WordPress. Dans mon exemple local (en.site1.wp.tmp), j'ai ajouté la ligne suivante au fichier/etc/hosts:

127.0.0.1    en.site1.wp.tmp

Votre site devrait maintenant être accessible via en.site1.example.com (ou dans mon exemple en.site1.wp.tmp):

The site under the new domain

Si vous avez modifié l'URL d'un site avec un contenu existant, vous souhaiterez peut-être mettre à jour les références à l'ancienne URL dans la base de données WordPress. Vous pouvez utiliser wp-cli pour cela:

wp search-replace en-site1.example.com en.site1.example.com --network --precise --dry-run 

Le --dry-run vous donne un aperçu des colonnes de la table qui seront affectées sans rien changer. Après avoir sauvegardé vos données et vérifié deux fois votre paramètre, exécutez la commande sans ce paramètre.

6
David