Saat memindahkan situs WP, mengapa wp-admin mengalihkan ke situs lama?

16

Saya sedang dalam proses memindahkan situs WP dari satu host ke yang lain. Saya menyalin database dan semua file, membuat database baru dan mengimpor yang lama. Saya kemudian mengubah file wp-config. Halaman beranda menunjukkan baik-baik saja, tetapi ketika saya mencoba mengakses / wp-admin itu membawa saya kembali ke situs lama.

Situs baru ini adalah server dev tempat saya berencana untuk membuat perubahan gaya sebelum saya menampilkan situs tersebut.

Apa yang saya lewatkan tentang transisi ini? Bagaimana saya membuat situs menanggapi url dev dengan benar?

fmz
sumber

Jawaban:

22

Jika ini adalah instalasi WordPress tunggal, ada beberapa entri database dengan domain lama Anda. Khususnya, siteurldan di homedalam wp_options.

Karena itu, jika URL dev bersifat sementara, Anda juga dapat mengatur dua konstanta berikut dalam wp-config.php:

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

Asalkan WordPress diinstal di root situs web Anda.

NightHawk
sumber
Anda juga perlu memperbarui guiduntuk masing-masing wp_postsjika ada lampiran, menggunakan sesuatu sepertiUPDATE wp_posts SET guid = REPLACE('<old_url>','<new_url>', guid)
Cyclonecode
2
GUID tidak harus diubah. Baca lebih lanjut di sini: codex.wordpress.org/Changing_The_Site_URL#Important_GUID_Note
NightHawk
4

Itu bukan masalah besar. Database Anda berisi semua tautan sebelumnya yang tidak dapat dikonversi secara otomatis. Ada dua jenis solusi untuk itu:

  1. Di wp-config.phptambahkan kode ini:

    define ('WP_HOME', 'http: //'. $ _SERVER ['SERVER_NAME']);
    define ('WP_SITEURL', WP_HOME. '/');
  2. Ubah SQL berikut dengan mengganti "oldurl" dengan tautan sebelumnya dan "newurl" dengan tautan saat ini:

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';

Jalankan query SQL ini di database Anda, ubah awalan jika Anda memiliki sesuatu yang berbeda dari wp_.

Aakash Bhagat
sumber
2

Hanya dengan mengubah URL situs di konfigurasi kemungkinan tidak akan memperbarui semua internal untuk membuat situs dev yang berfungsi untuk Anda (kecuali jika situs tersebut cukup sederhana). Anda akan mengalami masalah dengan data bersambung yang tidak ditampilkan dan tautan dalam pos yang menunjuk ke situs lama.

Akan lebih pintar menggunakan alat migrasi seperti Backup Buddy atau Duplicator untuk membuat salinan lengkap situs yang dapat digunakan kembali di lokasi baru dengan URL baru. Dengan melakukan ini, Anda masih memiliki tautan yang berfungsi di dalam pos, tautan menu apa pun, dll. Menggunakan salah satunya akan membuat peluncuran perubahan Anda menjadi lebih mudah juga. Hanya paket semuanya dan sebarkan kembali ke situs produksi Anda setelah Anda selesai.

Jika Anda tidak ingin menghabiskan waktu mengunduh / mengunggah semuanya lagi, Anda dapat memigrasi basis data menggunakan sesuatu seperti WP Migrate DB. Instal di situs produksi Anda, ekspor database dengan URL baru dan impor database bermigrasi ke dev Anda melalui phpMyAdmin atau serupa. Setiap tautan kode-keras dalam tema Anda masih perlu diperbarui dan .htaccess Anda perlu diperbarui jika Anda memasang di sub-folder.

Ubah baris RewriteBase ke:

RewriteBase /yourfolder/

Dan garis yang mengarahkan ke index.php Anda ke:

RewriteRule . /yourfolder/index.php [L]
Sean Michaud
sumber
0

Anda harus mengubah alamat situs (URL) dan alamat WordPress (URI) melalui panel admin sebelum memindahkan situs ke URL lain.

Dalam kasus Anda, Anda tidak dapat melakukannya ke situs langsung, jadi Anda dapat mencoba alat seperti Cari dan ganti basis data untuk mengubah URL dari basis data situs dev.

Anda juga dapat mereferensikan Moving WordPress

Laxmana
sumber
0
  1. phpMyAdmin: pergi ke wp_optionsmeja set homeurldan siteurlsebagai url baru Anda
  2. Login ke wp-admindashboard Anda pergi untuk setting->general mengubah Alamat WordPress (URL) dan Alamat Situs (URL)
pengguna8724101
sumber