Bir WP sitesini taşırken, wp-admin neden eski siteye yönlendiriyor?


16

Bir WP sitesini bir ana bilgisayardan diğerine taşıma sürecindeyim. Veritabanını ve tüm dosyaları kopyaladım, yeni bir veritabanı oluşturdum ve eskisini içe aktardım. Daha sonra wp-config dosyasını değiştirdim. Ana sayfa iyi görünüyor, ancak / wp-admin'e erişmeye çalıştığımda beni eski siteye geri götürüyor.

Yeni site, siteyi hayata geçirmeden önce stil değişiklikleri yapmayı planladığım bir dev sunucusudur.

Bu geçişte neyi kaçırıyorum? Sitenin geliştirici URL'sine doğru bir şekilde yanıt vermesini nasıl sağlayabilirim?

Yanıtlar:


22

Bu tek bir WordPress yüklemesi ise, eski alan adınızla birkaç veritabanı girişi vardır. Özellikle siteurlve homeiçeride wp_options.

Bununla birlikte, dev URL'si geçici ise aşağıdaki iki sabiti de ayarlayabilirsiniz wp-config.php:

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

WordPress'in web sitenizin kök dizinine yüklenmesi şartıyla.


Ayrıca , herhangi bir ek durumunda, guidher biri için güncellemeniz gerekirwp_postsUPDATE wp_posts SET guid = REPLACE('<old_url>','<new_url>', guid)
Cyclonecode

2
GUID değiştirilmemelidir. Daha fazla bilgiyi
NightHawk

4

Bu büyük bir sorun değil. Veritabanınız, otomatik olarak dönüştürülemeyen tüm önceki bağlantıları içerir. Bunun için iki tür çözüm vardır:

  1. Gelen wp-config.phpbu kodu ekleyin:

    define ('WP_HOME', 'http: //'. $ _SERVER ['SERVER_NAME']);
    define ('WP_SITEURL', WP_HOME. '/');
  2. "Oldurl" yerine önceki bağlantıyı ve "newurl" ifadesini geçerli bağlantıyla değiştirerek aşağıdaki SQL'i değiştirin:

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

Veritabanınızda bu SQL sorgularını çalıştırın ve farklı bir şey varsa öneki değiştirin wp_.


2

Yapılandırmadaki site URL'sinin değiştirilmesi, sizin için çalışan bir geliştirme sitesi oluşturmak için tüm dahili öğeleri güncellemeyecektir (site oldukça çıplak kemikler olmadıkça). Serileştirilmiş veriler gösterilmiyor ve eski siteye işaret eden yayınlardaki bağlantılar ile ilgili sorunlarınız olacak.

Sitenin tam bir kopyasını yeni bir URL ile yeniden konuşlandırılabilecek tam bir kopyasını oluşturmak için Backup Buddy veya Duplicator gibi bir taşıma aracı kullanmak daha akıllıca olur. Bunu yaptığınızda, gönderiler içinde çalışan bağlantılar, özel menü bağlantıları vb. Olur. Bunlardan birini kullanmak da değişikliklerinizi başlatmayı kolaylaştıracaktır. Hepsini paketleyin ve işiniz bittiğinde üretim sitenize yeniden dağıtın.

Her şeyi tekrar indirmek / yüklemek için zaman harcamak istemiyorsanız, WP Migrate DB gibi bir şey kullanarak veritabanını taşıyabilirsiniz. Üretim sitenize yükleyin, yeni URL ile bir veritabanını dışa aktarın ve taşınan veritabanını phpMyAdmin veya benzeri aracılığıyla geliştiricinize aktarın. Bir alt klasöre yüklüyorsanız temanızdaki sabit kodlu bağlantıların yine de güncellenmesi ve .htaccess'inizin güncellenmesi gerekecektir.

RewriteBase satırını şu şekilde değiştirin:

RewriteBase /yourfolder/

Ve index.php dosyasına yönlendiren satır:

RewriteRule . /yourfolder/index.php [L]


0
  1. phpMyAdmin: wp_optionstablo kümesine homeurlve siteurlyeni URL'niz olarak gidin
  2. wp-adminKontrol panelinize giriş yaparak setting->general WordPress Adresini (URL) ve Site Adresini (URL) değiştirin
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.