Si toutefois, vous décidez de déplacer votre administrateur cela est bien possible. Il peut arriver que vous ayez besoin de migrer l’administrateur de WordPress sur votre serveur ou parfois vers un autre serveur. L’administration de WordPress est suffisamment flexible pour prendre en charge tous ces contextes.
Si vous voulez déplacer votre administration d’un serveur à l’autre, faites en sorte de sauvegarder toutes vos données, vos fichiers.
I. LE FONDEMENT
En théorie, cela devait être cohérent et l’architecture ne devrait pas être trop compliquée si les personnes qui se connectent au backoffice travaillent à l’intérieur des locaux car on ouvre pas le serveur vers l’extérieur, mais on déplace directement un sous-domaine comme par exemple “admin.mondomaine.fr” à ce serveur.
Cependant, il est encore plus facile de modifier certains détails comme les caches,car nous pouvons toujours dire à ce serveur “back” (arrière plan) de se connecter à l’un des caches “front”
Par ailleurs, WordPress ne connaît qu’une seule URL pour son administrateur qui est www.mondomaine.fr.fr/wp-admin. WordPress stock des URL codées en dur dans la base de données, et certaines fonctionnalités principales sont codées en dur avec la chaîne “wp-admin”. Cela signifie que WordPress va rediriger toute personne d’accès à votre administrateur vers cette URL.
Vous pouvez déplacer facilement votre administration sans changer l’adresse Web de WordPress, ni l’adresse du site durant votre installation de WordPress. Par conséquent, il est pratiquement impossible de déplacer l’administration vers un sous-domaine à première vue, surtout si vous ne voulez pas toucher la base.
II. VIRTUAL HOSTING (VHOST)
En informatique, l’hébergement de stockage virtuel (VHost) est une méthode que les serveurs tels que les serveurs Web utilisent pour contenir plusieurs noms de domaines sur le même ordinateur, parfois sur la même adresse IP, tous égaux à maintenir un gestionnaire distinct de chacun de ces noms.
L’une des méthodes de développement possibles pour WordPress consiste à configurer à configurer un serveur HTTP local, puis à générer un VHost pour rediriger les URL du site de production vers la version locale. Cela évite toute confusion avec les URL stockées dans la base de données. L’URL est la même.
VHost est adapté à plusieurs environnements, puisque cela présente un avantage similaire pour la configuration donc nous pouvons définir des variables d’environnement pour le VHost.
III. WP-LOGIN.PHP
Techniquement, wp-admin est un répertoire qui existe sur le serveur en tant que fichier PHP pour vous assurer que votre site WordPress fonctionne correctement.
Dans la phase de liaison, WordPress est simple. Les utilisateurs seront redirigés vers l’URL “site-url>/wp-login.php” où se situe l’adresse frontale. C’est un problème pour nous car nous voulons que notre direction gère cette étape de mise en relation.
Pour ce faire, vous devez copier le fichier wp-login.php dans le dossier wp-admin/ où vous avez toute l’administration. C’est un fichier supplémentaire, donc c’est bien car il est moins susceptible d’être écrasé par une mise à jour WordPress.
Une fois le fichier copié, vous devrez apporter quelques modifications parce que le chargeur n’est plus à jour au niveau de l’arborescence et ensuite le formulaire pointe car il est toujours dans l’ancien fichier.
Alors, modifiez- les comme ceci.
require( dirmane(__FILE__) . ‘/../wp-load.php’ );
action=”<?php echo esc_url( admin_url( ‘wp-login.php’,’login_post’ ) ); ?>”
Il existe désormais un fichier wp-admin/wp-login.php qui charge correctement la base de WordPress et qui se souvient de lui-même lors de l’invocation du formulaire.
Une petite astuce : Si vous avez installé WordPress sur un sous-domaine, vous pouvez accéder à la page de connexion à partir de l’une de ces adresses: sousdomaine.monsite.com/wp-login.php.
IV. LE PARAMÉTRAGE
A ce stade, nous allons faire la configuration nécessaire pour faire croire à WordPress que son URL d’administration est en réalité notre sous-domaine. Tout ce passe dans le fichier wp-config.php. Tout d’abord, nous allons devoir définir une nouvelle constante pour stocker cette URL.
Ensuite, pour que la connexion se passe bien et que WordPress puisse recevoir les données grâce à des cookies, il faut accomplir 2 constantes définies régulièrement par la base. définissez d’abord le chemin d’accès à admin (pas de domaine), donc par défaut c’est “/wp-admin” le second définit le domaine auquel s’applique le cookie, c’est a dire “mondomaine.fr” par défaut.
- define( ‘ADMIN_COOKIE_PATH’ , FALSE );
- define( ‘COOKIE_DOMAIN’ , ‘ .mondomaine.fr’ );
Nous précisons ici que le cookie est partagé entre tous les sous-domaines de “mondomaine.fr” et que le cookie d’administration sera disponible depuis la racine.
Pour finir, vous devez toujours ajouter le code suivant au fichier wp-config.php pour éviter l’erreur PHP qui se produit après avoir exécuté tout cela dans le fichier wp-includes/vars.php à la ligne 28:
- if( ‘http://’ . $_SERVER[‘HTTP_HOST’] == ADMIN_WEBURL)
- $_SERVER[‘PHP_SELF’] = ‘/wp-admin’ .
- $_SERVER[‘PHP_SELF’];
De plus, une correction de bogue permet de définir correctement la variable $pagenow, qui est une variable globale qui peut être utilisée dans tout le système d’administration qui est à la base de certains contrôles et ou certaines fonctions.
V. LES FILTRES
On est presque à la fin. tout est prêt. Il suffit de changer les valeurs recherchées par WordPress, grâce à quelques fonctionnalités et quelques filtres. Ces derniers peuvent être placés dans des thèmes comme le fichier functions.php ou des plugins spéciaux.
L’URL de l’administrateur est la première valeur à mettre. Nous avons la fonction admin_url() avec un filtre appelé “admin_url”.
Remarque: assurez vous que l’URL demandée ne correspond pas au fichier “Admin-ajax.php”. En fait, ce fichier sert d’agrégateur pour tous les appels AJAX effectués dans WordPress, que ce soit en admin ou en frontoffice. Autrement dit, si vous avez installé un plugin qui effectue des appels AJAX depuis le frontoffice, il tapera sur cette URL pour des raisons de sécurité, vous pouvez le laisser dans un sous-domaine, sauf que faire des appels entre deux domaines différents est interdit. Par conséquent, les appels échoueront. La solution est ici de rendre le fichier accessible depuis le front à l’adresse habituelle (mondomaine.fr/wp-admin/admin-ajax.php).
La deuxième valeur est l’URL de la page de connexion et la fonction est
- admin_url(),login_url filtrable.
La troisième est l’URL de connexion et son filtre est “logout_url”. Encore une fois, on ne change que l’URL du fichier « wp-login.php » qui est lié à la fonction principale.
VI. LA LIVRAISON
On est arrivé à la fin. Vous pouvez accéder à l’administration depuis l’URL “admin.mondomaine.fr”. Vous pouvez vous connecter à l’URL et vous connecter sans perdre les fonctionnalités de base de WordPress.
Certains plugins que vous utilisez peuvent ne pas s’adapter à des fonctions dédiées comme admin_url(), il y a peut être des anomalies.
Lorsque vous utilisez Internet Explorer, vous pouvez faire face à des bugs concernant l’IE. ce code va vous permettre d’éviter ce genre de bug:
- <style type=”text/css” media=”print”>#wpadminbar {display:none; }</style>
Ce code ajouté par la fonction wp_admin_bar_header(), est causé par une action WordPress. Il suffit alors de supprimer tout simplement cette fonction sur ce hook pour qu’il n’y ait plus de disfonctionnement.
Vous pouvez maintenant déplacer votre administration de WordPress sans difficulté grâce à cette méthode. Si vous avez d’autres idées aussi nous sommes preneurs. Vos questions et suggestions aussi sont les bienvenues.
[…] vous avez oublié votre mot de passe ou si vous ne pouvez pas accéder à l’interface d’administration, vous pouvez réinitialiser le mot de passe en utilisant des requêtes SQL. Cette méthode […]