web-dev-qa-db-fra.com

Lorsque vous déplacez un WP site, pourquoi wp-admin redirige-t-il vers l'ancien site?

Je suis en train de déplacer un site WP d'un hôte à un autre. J'ai copié la base de données et tous les fichiers, créé une nouvelle base de données et importé l'ancien. J'ai ensuite changé le fichier wp-config. La page d'accueil est correcte, mais lorsque j'essaie d'accéder à/wp-admin, cela me ramène à l'ancien site.

Le nouveau site est un serveur de développement sur lequel je prévois d’apporter des modifications de style avant de mettre le site en production.

Qu'est-ce qui me manque dans cette transition? Comment faire en sorte que le site réponde correctement à l'URL de dev?

15
fmz

S'il s'agit d'une seule installation WordPress, il existe plusieurs entrées de base de données avec votre ancien domaine. Plus précisément, siteurl et home dans wp_options.

Cela dit, si l'URL dev est temporaire, vous pouvez également définir les deux constantes suivantes dans wp-config.php:

define('WP_HOME', 'http://' . $_SERVER['SERVER_NAME']);
define('WP_SITEURL', WP_HOME . '/');

Pourvu que WordPress soit installé à la racine de votre site web.

20
NightHawk

Ce n'est pas un gros problème. Votre base de données contient tous les liens précédents qui ne peuvent pas être convertis automatiquement. Il existe deux types de solutions pour cela:

  1. Dans wp-config.php, ajoutez ce code:

    define ('WP_HOME', 'http: //'. $ _SERVER ['SERVER_NAME']); 
     define ('WP_SITEURL', WP_HOME. '/');
  2. Modifiez le code SQL suivant en remplaçant "oldurl" par le lien précédent et "newurl" par le lien actuel:

UPDATE wp_posts SET guid = replace(guid, 'oldurl','newUrl'); 

UPDATE wp_posts SET post_content = replace(post_content, 'oldurl', 'newUrl'); 

UPDATE wp_links SET link_url = replace(link_url, 'oldurl', 'newUrl'); 

UPDATE wp_links SET link_image = replace(link_image, 'oldurl', 'newUrl'); 

UPDATE wp_postmeta SET meta_value = replace(meta_value, 'oldurl', 'newUrl'); 

UPDATE wp_usermeta SET meta_value = replace(meta_value, 'oldurl', 'newUrl'); 

UPDATE wp_options SET option_value = replace(option_value, 'oldurl', 'newUrl') WHERE option_name = 'home' OR option_name = 'siteurl';

Exécutez ces requêtes SQL dans votre base de données en modifiant le préfixe si vous avez autre chose que wp_.

4
Aakash Bhagat

Le simple fait de changer l'URL du site dans la configuration ne mettra probablement pas à jour tous les éléments internes pour créer un site de développement actif pour vous (à moins que le site ne soit vraiment dépouillé). Vous aurez des problèmes avec les données sérialisées qui ne s'affichent pas et les liens dans les publications pointant vers l'ancien site.

Il serait plus judicieux d'utiliser un outil de migration tel que Backup Buddy ou Duplicator pour créer une copie complète du site pouvant être redéployée à un nouvel emplacement avec une nouvelle URL. Ce faisant, vous aurez toujours des liens de travail dans les messages, des liens de menu personnalisés, etc. L'utilisation de l'un d'eux facilitera également le lancement de vos modifications. Il suffit de tout emballer et de le redéployer sur votre site de production lorsque vous avez terminé.

Si vous ne voulez pas perdre votre temps à tout télécharger/tout transférer à nouveau, vous pouvez simplement migrer la base de données en utilisant un élément tel que WP Migrate DB. Installez-le sur votre site de production, exportez une base de données avec la nouvelle URL et importez la base de données migrée sur votre développeur via phpMyAdmin ou similaire. Tous les liens codés en dur dans votre thème devront tout de même être mis à jour et votre fichier .htaccess devra être mis à jour si vous effectuez l'installation dans un sous-dossier.

Modifiez la ligne RewriteBase en:

RewriteBase /yourfolder/

Et la ligne qui redirige vers votre index.php vers:

RewriteRule . /yourfolder/index.php [L]
2
Sean Michaud
  1. phpMyAdmin: allez à la table wp_options et définissez homeurl et siteurl comme nouvelle URL.
  2. Connectez-vous à votre tableau de bord wp-admin Allez à setting->general modifier l'adresse WordPress (URL) et l'adresse du site (URL)
0
user8724101

Vous devez modifier l'adresse du site (URL) et l'adresse WordPress (URI) via le panneau d'administration avant de déplacer le site vers une autre URL.

Dans votre cas, vous ne pouvez pas faire cela sur un site actif. Vous pouvez donc essayer un outil tel que Rechercher et remplacer des bases de données pour modifier l'URL à partir de la base de données du site dev.

Vous pouvez également référencer Moving WordPress

0
Laxmana