it-swarm-id.com

Cara: Memindahkan Instalasi WordPress dengan Mudah dari Pengembangan ke Produksi?

Saya melakukan pengembangan pada satu kotak dan menggunakan yang kedua untuk produksi. Saat ini saya hanya membuang database dan kemudian mencari ganti untuk perubahan URL; kemudian salin file dan impor SQL baru.

Apakah ada cara yang lebih baik untuk melakukan ini?

197
Ryan Gibbons

@ Insanity5902 : Penyebaran situs WordPress dari satu kotak ke kotak lainnya telah menjadi PITA sejak hari pertama saya mulai bekerja dengan WordPress. (Sejujurnya itu adalah PITA dengan Drupal selama 2 tahun sebelum saya mulai dengan WordPress sehingga masalahnya tentu tidak hanya dengan WordPress.)

Itu mengganggu saya bahwa setiap kali saya harus memindahkan situs saya harus menghabiskan banyak upaya duplikat dan itu membuat saya dari penggelaran untuk menguji sesering yang saya inginkan. Jadi sekitar 4-6 bulan yang lalu saya mulai bekerja pada sebuah plugin untuk menyelesaikan masalah migrasi hosting dan Saya menyebutkan ide-ide saya di WP Forum Tavern .

Maju cepat ke hari ini dan saya sudah cukup berhasil dan saya mudah menyebutnya "WP Migrasi Webhosts." Meskipun plugin ini masih sangat banyak beta (mungkin bahkan alpha) diberikan pertanyaan Anda, saya pikir saya siap untuk membiarkan orang mulai menggedor itu.

Kasus penggunaan yang dibayangkan adalah:

  1. pertama pengembang menangani mengunggah semua tema dan file plugin yang diubah melalui FTP,
  2. kemudian mengunggah pengembangan database MySQL ke server pengujian secara keseluruhan dan akhirnya
  3. then menjalankan plugin untuk memigrasi setiap referensi dari domain sebelumnya ke yang baru. (Pengaya saya tidak mencoba menyelesaikan penggabungan bidang basis data atau tabel baru dengan data langsung; YANG adalah masalah yang jauh lebih besar yang saya tidak yakin bagaimana menyelesaikannya.)

Anda dapat mengunduh plugin dari situs web saya dan unzip ke direktori plugins Anda (jika Anda tidak tahu bagaimana melakukan ini maka plugin ini bukan untuk Anda karena memerlukan seseorang yang tahu apa yang mereka lakukan untuk menggunakannya. ) Saya akan menjaga plugin ini online sampai saya merilisnya ke WordPress.org dan setelah itu Anda harus mencarinya di sana.

Untuk menggunakannya, Anda mengambil pendekatan berbeda dalam wp-config.php Anda yang normal dengan mengomentari empat (4) yang mendefinisikan DB_NAME, DB_USER, DB_PASSWORD dan DB_Host dan sebaliknya mendaftarkan default untuk hosting dan kemudian mendaftarkan info tentang masing-masing hosting itu sendiri. Inilah yang terlihat seperti segmen wp-config.php (perhatikan bagian pertama adalah kode yang tidak dibutuhkan yang dikomentari dan juga perhatikan bahwa saya mengatur file host saya di mesin lokal saya dengan domain tingkat atas .dev non-routable untuk membuat pengembangan sehari-hari) lebih mudah Di Mac VirtualHostX membuat ini mudah):

// ** MySQL settings - You can get this info from your web Host ** //
/** The name of the database for WordPress */
//define('DB_NAME', 'wp30');

/** MySQL database username */
//define('DB_USER', 'wp30_anon');

/** MySQL database password */
//define('DB_PASSWORD', '12345');

/** MySQL hostname */
//define('DB_Host', '127.0.0.1:3306');

require_once(ABSPATH . 'wp-content/plugins/wp-migrate-webhosts/wp-webhosts.php');
register_webhost_defaults(array(
 'database'  => 'example_db',
 'user'      => 'example_user',
 'password'  => '12345',
 'Host'      => 'localhost',
 'sitepath'  => '',        // '' if WordPress is installed in the root
));
register_webhost('dev',array(
 'name'      => 'Example Local Development',
 'Host'      => '127.0.0.1:3306',
 'domain'    => 'example.dev',
 'rootdir'   => '/Users/mikeschinkel/Sites/example/trunk',
));
register_webhost('test',array(
 'name'      => 'Example Test Server',
 'rootdir'   => '/home/example/public_html/test',
 'domain'    => 'test.example.com',
));
register_webhost('stage',array(
 'name'      => 'Example Staging Server',
 'rootdir'   => '/home/example/public_html/stage',
 'domain'    => 'stage.example.com',
));
register_webhost('live',array(
 'name'      => 'Example Live Site',
 'rootdir'   => '/home/example/public_html/',
 'password'  => '%asd59kar12*fr',
 'domain'    => 'www.example.com',
));
require_once(ABSPATH . 'wp-content/plugins/wp-migrate-webhosts/set-webhost.php');

Semoga ini (sebagian besar) cukup jelas. Saya mencoba untuk membuat kode sebersih yang saya bisa tetapi sayangnya itu membutuhkan dua baris require_once() samar sebelum dan sesudah blok kode pendaftaran hosting karena tidak ada cara bagi saya untuk "hook" WordPress sebelum wp-config.php dipanggil.

Setelah Anda memperbarui wp-config.php Anda maka Anda cukup menggunakan pintasan URL wp-migrate-webhosts untuk pergi ke layar admin seperti:

http://example.com/wp-migrate-webhosts

Di atas akan membawa Anda ke layar admin seperti berikut ini yang memiliki sedikit teks deskripsi dan memungkinkan Anda untuk melakukan migrasi DARI salah satu domain hosting lainnya dengan satu klik setelah memilih domain untuk bermigrasi dari ( NOTE: contoh ini menunjukkan akan DOWN dari server test/stage/live ke pengembangan lokal tetapi yakin itu dapat melakukan migrasi KE domain mana pun yang kebetulan berada Ini juga berarti plugin akan bagus untuk mengambil situs langsung yang ada dan dengan cepat membuat lingkungan pengembangan lokal berfungsi! ):

 enter image description here 

Jika tidak jelas "migrasi" dalam konteks ini berarti memperbarui semua referensi dalam database saat ini agar sesuai untuk hosting yang saat ini didefinisikan (dan "current" adalah mengendus dengan memeriksa $_SERVER['SERVER_NAME'] .)

Apa yang keren tentang plugin ini adalah mengimplementasikan beberapa migrasi dasar tetapi siapa pun dapat mengaitkannya dan melakukan migrasi mereka sendiri . Misalnya, jika Anda menambahkan plugin galeri yang menyimpan path lengkap ke gambar dalam database, Anda bisa mengaitkan tindakan migrate_webhosts yang akan melewati hosting "from" dan hosting "to" masing-masing sebagai hosting array metadata dan Anda akan diizinkan untuk melakukan apa pun yang perlu Anda lakukan dalam database menggunakan SQL atau fungsi API WordPress yang berlaku untuk melakukan migrasi. Ya, ada di antara kita yang bisa melakukan ini tanpa plugin tetapi tanpa plugin saya menemukan bahwa menulis semua kode yang dibutuhkan lebih banyak upaya daripada nilainya. Dengan plugin ini, lebih mudah untuk menulis kait kecil ini dan menyelesaikannya.

Anda juga dapat menemukan migrasi saya gagal dalam kasus Edge yang belum saya uji dan mungkin Anda dapat membantu saya meningkatkan plugin? Siapa pun yang ingin dapat mengirim email kepada saya melalui akun gmail saya (alias saya adalah "mikeschinkel.")

Juga, plugin ini dirancang untuk menerima metadata webhost yang ditentukan pengguna selain yang dikenali seperti database, user, password, Host, domain dll. Contoh yang sempurna mungkin googlemaps_apikey di mana Anda dapat menyimpan kunci API yang berbeda untuk setiap domain bahwa plugin Google Map Anda perlu beroperasi dengan benar (siapa di antara Anda yang telah menggunakan plugin Google Maps belum menyebarkan aplikasi ke server langsung dan lupa mengubah kode ke kunci API yang benar? Ayo, jujur ​​... :) Dengan plugin ini, elemen googlemaps_apikey di array register_webhost () Anda dan hook migrate_webhosts kustom kecil Anda dapat secara efektif menghilangkannya sebagai masalah!

Nah itu saja. Saya meluncurkan plugin ini di sini di Pertukaran WordPress WordPress karena pertanyaan @ Insanity5902 yang memicu itu. Beri tahu saya jika ini membantu, di sini jika perlu, atau melalui email jika tidak.

P.S. Jika Anda memutuskan untuk menggunakan ini, ingat itu alfa/beta dan itu artinya akan berubah jadi bersiaplah untuk beberapa operasi kecil jika Anda ingin menggunakannya sekarang dan kemudian gunakan versi yang dirilis setelah dipukul oleh banyak tangan.

P.P. Apa tujuan saya dengan ini? Saya senang melihat ini bermigrasi ke inti WordPress sehingga semua orang akan memiliki akses ke sana. Tetapi sebelum itu bahkan dapat dianggap banyak orang harus tertarik menggunakannya untuk memastikan itu benar-benar memecahkan lebih banyak masalah maka berpotensi menciptakan. Jadi, jika Anda menyukai ide itu maka gunakanlah dan bantu saya mendapatkan momentum dengannya untuk akhirnya dimasukkan ke dalam inti WordPress.

121
MikeSchinkel

Jika memungkinkan, saya mengatur WP_HOME dan WP_SITEURL di wp-config.php. Ini, dikombinasikan dengan dump database dan impor, adalah solusi paling sederhana dari semua yang saya kenal.

http://codex.wordpress.org/Changing_The_Site_URL#Edit_wp-config.php

35
Annika Backstrom

Retas favorit saya; tambahkan pengaturan ke /etc/hosts Anda untuk membuat titik produksi domain ke kotak pengembangan Anda, tepat di mesin Anda. Untuk menyebarkan ke produksi Anda rsync semua file dan tekan database.

Risiko strategi ini jelas; Anda mungkin membingungkan lingkungan pengembangan Anda dengan lingkungan produksi Anda.

Ini masih merupakan perbaikan yang mudah.

27
Wietse Venema

Saya menginginkan sesuatu yang serupa ketika saya pindah ke WP beberapa bulan yang lalu, jadi saya menulis skrip Shell yang cukup sederhana yang menggunakan rsync dan mysqldump di atas ssh:

http://snarfed.org/sync_wordpress

Ini tidak canggih atau berbasis web, tapi saya senang dengan itu.

9
ryan

WP Engine adalah layanan baru yang menawarkan "Pementasan Sekali Klik":

WPEngine memiliki fitur eksklusif yang disebut "staging." Inilah cara kerjanya: Sebelum Anda membuat perubahan menakutkan ke blog Anda, klik tombol "snapshot". Kami membuat salinan lengkap dari blog Anda dan mengaturnya di area yang terpisah dan aman. Anda dapat bermain dengan apa pun yang Anda inginkan; tidak ada yang hidup. Hanya ketika Anda siap untuk membuatnya live barulah Anda menyentuh situs utama Anda.

Sepertinya cara yang sangat mudah untuk dengan cepat beralih dari pengembangan ke produksi, terutama dengan situs yang sudah ada.

8
Travis Northcutt

Duplikator Plugin: Ini adalah plugin yang telah saya kerjakan. Saat ini masih dalam versi beta tetapi menyelesaikan pekerjaan untuk sebagian besar situs. Saat ini ditargetkan pada pemasangan WordPress yang lebih kecil. http://wordpress.org/extend/plugins/duplicator/

Sumber daya: Sumber daya tambahan untuk plugin dapat ditemukan di sini: http://lifeinthegrid.com/duplicator/

Komunitas: Beri tahu kami tentang kesuksesan Anda atau masalah apa pun yang mungkin Anda hadapi! Dalam upaya untuk lebih mudah mengelola berbagai utas, harap kirim masalah ke forum plugin WordPress.org. Tolong jangan memposting data logging dari plugin ke forum online. Data logging dapat dikirimkan ke situs dukungan kami.

7
Cory

Anda mungkin melihat produk dari iThemes, yang disebut BackUpBuddy . Saya hanya menggunakannya dua kali, setiap kali memiliki satu atau dua halangan, tetapi secara keseluruhan terlihat menjanjikan.

6
MikeK

Ini terlihat menjanjikan. Kami sedang mengerjakan beberapa skrip untuk menangani migrasi beberapa data, misalnya opsi-wp, mengubah jalur di db, penyalinan melalui media.

Masalah yang saya miliki adalah bahwa situs langsung terus tumbuh sementara yang lain sedang dalam pengembangan. Satu situs tempat kami bekerja memiliki 20 posting sehari dan lebih dari 3.000 komentar per hari. Terlalu banyak data untuk dipindahkan dengan phpmyadmin atau melalui baris perintah. Juga, memindahkan data selalu menyebabkan masalah UTF karena beberapa alasan.

Juga, sekarang sepertinya pilihan menu disimpan dalam DB, saya punya lebih banyak untuk berurusan dengan.

Saya memeriksa semua kode saya ke SVN dan menyebarkan kode melalui FTP dari server (Beanstalk). Ini tidak membuat perubahan ke DB untuk saya atau mengaktifkan plugin baru.

Rencana saya sekarang adalah membuat file manifes sementara saya mengembangkan untuk melakukan semua perubahan saya ke situs langsung.

Misalnya file akan memiliki baris yang dapat dibaca manusia

Itu akan termasuk plugin untuk mengaktifkan, opsi-wp untuk pindah, gambar untuk dipindahkan, halaman untuk dipindahkan. Kemudian plugin saya, akan mendeteksi file manifes dan membuat semua perubahan pada situs pementasan.

Setelah saya mengujinya dan yakin saya mendapatkan semuanya, saya bisa yakin itu akan berhasil pada produksi.

Plugin ini masih hanya sebuah ide, tetapi saya memiliki beberapa kode yang ditulis untuk itu.

Juga, jika Anda ingin membuat perubahan hanya URL di DB Anda, Anda dapat menggunakan SQL berikut.

ganti saja $old$ dengan domain lama dan $new$ dengan yang baru

update wp_postmeta set meta_value = replace(meta_value, '$old$' , '$new$') ;
update wp_posts set post_content = replace(post_content, '$old$' , '$new$') ;
update wp_options set option_value = replace(option_value, '$old$' , '$new$') ;
5
Andrew

Saya pribadi menangani masalah ini dengan proyek saya di Github, yang disebut Autopress . Saya belum memiliki solusi yang sempurna, tetapi saya semakin dekat, terutama dengan plugin wpstage dari orang-orang wpengine.

5
Vid Luther

Dua proyek Google Summer of Code yang memiliki tujuan serupa:

4
Jan Fabry

Pada 2017 di sini adalah dua cara terbaik yang saya temukan untuk menangani transfer database WordPress dari pengembangan ke produksi.

WP Migrasikan DB Pro/WP Sinkronkan DB

https://wordpress.org/plugins/wp-migrate-db/

Plugin WordPress ini memungkinkan Anda untuk Push, menarik, dan menyinkronkan tabel database antara instalasi WordPress. Ini jauh lebih baik daripada mencari/mengganti karena berbagai alasan karena ini:

  • Mengekspor basis data Anda sebagai dump data MySQL (seperti phpMyAdmin)
  • Apakah menemukan dan mengganti URL dan jalur file
  • Menangani data serial
  • Memungkinkan Anda menyimpannya di komputer Anda sebagai file SQL

Saya penggemar dibayar untuk pekerjaan yang saya lakukan, jadi saya sarankan Anda mendukung Tuan Brad Touesnard dan membeli salinan lisensi dari barang asli. WP Sinkronisasi DB adalah ulangan dan sebagai hasilnya selalu ketinggalan. Dengan plugin ini prosesnya mati sederhana:

  1. Instal/aktifkan plugin di localhost dan lingkungan produksi Anda
  2. Konfigurasikan transfer Push dari server host/pengembangan Anda ke produksi Anda
  3. Isi aturan untuk tabel mana yang akan ditransfer, dan tentukan menemukan dan mengganti aturan yang harus dijalankan
  4. Itu dia!

Pencarian & Ganti Basis Data untuk Database WordPress oleh InterconnectIT

https://interconnectit.com/products/search-and-replace-for-wordpress-databases/

Alat gratis ini bukan plugin, tetapi diinstal di direktori root Anda dari instalasi produksi WordPress Anda. Ini tidak sebagus WP Migrasikan DB Pro karena membutuhkan beberapa langkah manual, tetapi tetap saja ini merupakan pilihan bagus yang secara konsisten berfungsi. Saat menggunakan pendekatan ini, prosesnya terlihat seperti ini:

  1. Cadangkan basis data lokal Anda, ini sangat diperlukan karena kami akan segera mengimpornya kembali
  2. Tambahkan skrip ke folder di direktori root instal Anda
  3. Jalankan temukan dan ganti pada database Anda
  4. Ekspor database Anda dan simpan untuk lingkungan produksi Anda
  5. Impor ulang cadangan Anda dari langkah # 1 untuk memulihkan hosting Anda
  6. Hubungkan ke basis data produksi Anda dan cadangkan (seperti yang selalu Anda lakukan sebelum melakukan hal-hal ini)
  7. Impor ekspor yang kami buat SETELAH menjalankan rutinitas find/replace dari langkah # 4

Anda dapat menggunakan pendekatan yang lebih cepat, tetapi melibatkan downtime untuk situs produksi Anda yang menurut saya tidak dapat diterima. Itu sebabnya kami menyebutnya produksi, kan?

3
Kevin Leary

Meskipun tidak ada kekurangan solusi yang baik di sini, dalam semangat berbagi saya pikir saya akan menambahkan skrip bash deploy saya ke tumpukan: https://github.com/jplew/SyncDB

SyncDB adalah skrip bash deploy yang dimaksudkan untuk menghilangkan kebosanan dalam menyinkronkan versi lokal dan jarak jauh dari situs Wordpress. Ini memungkinkan pengembang yang bekerja di lingkungan lokal (mis. MAMP) dengan cepat "Push" atau "pull" perubahan ke atau dari server produksi mereka dengan satu perintah terminal.

Skrip ini berfungsi baik dengan WP-Skeleton dari Mark Jaquith, dan memanfaatkan mysqldump, git dan rsync untuk menyinkronkan seluruh situs Anda — basis data, kode, dan media — dalam dua langkah mudah:

./syncdb
git Push hub master
3
JP Lew

Saya telah menggunakan http://wordpress.org/plugins/wp-clone-by-wp-academy/ . Ini bekerja dengan baik!

Hanya 3 langkah:

  1. Instal plugin di kedua situs.
  2. Gunakan plugin untuk menghasilkan cadangan di situs lama.
  3. Ambil URL cadangan yang diberikannya dan tancapkan ke halaman plugin di situs baru, tekan go, dan migrasi Anda selesai hanya dalam beberapa detik!

Ini menyesuaikan semua URL secara otomatis - termasuk penggantian string serial - sehingga tidak ada risiko kehilangan konfigurasi widget, dll.

Satu-satunya masalah yang saya miliki adalah dengan beberapa situs web dengan database yang lebih besar (~ 300MB), yang menyebabkan PHP waktu tunggu eksekusi skrip selama impor cadangan situs.

3
jmotes

Saya menggunakan perintah ekspor Subversion untuk menginstal file WordPress (http://core.svn.wordpress.org/tags//) serta semua plugin di repositori (http://plugins.svn.wordpress.org//tags //), lalu cukup Zip the theme and custom plugins dan instal secara normal. Setelah semua itu berjalan dan berjalan tanpa konten, saya mengekspor tes DB dan melakukan pencarian/ganti untuk URL DAN filepath (disimpan untuk media) dan impor ke dalam database kosong, kemudian cukup beralih info database di wp-config .php. Biasanya saya membutuhkan waktu sekitar 10 - 20 menit.

3
John P Bloch

Biasanya saya login ke phpMyadmin mengunggah database dan mengedit konten wp_options> siteurl dan wp_options> rumah ke domain yang diharapkan. Jika Anda perlu memperbarui URL dalam konten posting dan halaman Anda, Anda dapat melakukan pencarian/ganti untuk URL dan jalur media/unggah pada file .SQL sebelum mengunggah. Ini pekerjaan cepat.

3
Alex Costa

Saya telah menggunakan plugin backupbuddy untuk sementara waktu sekarang. Ini memungkinkan Anda membuat cadangan database dan semua file, mengunduhnya sebagai Zip atau mengirimnya langsung ke server lain melalui FTP. URL juga menemukan dan mengganti untuk Anda. Biasanya saya membutuhkan waktu sekitar 5 menit untuk menjalani seluruh proses. Dan karena semua file di-zip, proses mengunggah/mengunduh jauh lebih cepat. Dan tidak, saya tidak bekerja untuk mereka, tetapi plugin ini benar-benar membuat seluruh proses ini lebih mudah.

1
gdaniel

Solusi pembayaran lain: kerangka kerja tema Xtreme One dirilis versi 1.2 dengan Cadangan Xtreme yang memungkinkan Anda untuk "mengekspor atau mengimpor pengaturan Childthemes, Tata Letak atau Widget Anda dengan semua pengaturan/konten sebagai File XML. "

1
Jan Fabry

karena saya menjalankan situs saya di IIS (Saya juga menjalankan asp.net, jadi saya memerlukan windows) Saya menggunakan WebPI dari Msft untuk menginstal contoh baru, kemudian saya menyalin template dan menggunakan impor/ekspor untuk mentransfer data.

Itu tidak sempurna tetapi semuanya membutuhkan waktu kurang dari satu jam.

Jelas akan menyenangkan untuk memiliki solusi satu-klik, tetapi inilah yang saya temukan paling mudah bagi saya.

1
Sruly

RAMP adalah plugin penyebaran konten baru dari Crowd Favorite, dan terlihat sangat apik. Ini $ 250, jadi saya belum mencobanya. Mungkin hanya membayar untuk dirinya sendiri dalam jumlah waktu yang dihemat, jadi saya mempertimbangkannya.

Manfaat besar yang dimilikinya atas sebagian besar metode lain yang disebutkan, adalah bahwa ia dapat secara cerdas menggabungkan posting, komentar, dll. Ini bukan hanya mengimpor mysqldump, itu lebih seperti kontrol sumber untuk database. Misalnya, ketika menggunakan pos, itu juga akan menyebarkan tag untuk pos itu, jika belum ada dalam produksi.

1
Ian Dunn

Seorang rekan kerja menemukan ini. Konsep yang menarik, meskipun tidak bekerja lintas server sepertinya. Saya masih menjelajahinya, tetapi sepertinya itu bisa bekerja bagus untuk contoh pementasan

http://code.google.com/p/deploymint/

1
Ryan Gibbons

Ini mungkin belum ada ketika Anda mengajukan pertanyaan, tetapi saya telah menggunakan layanan yang disebut Blogvault selama beberapa bulan dan telah melakukan ini dengan sempurna. Saya mungkin telah melakukan lebih dari 50 migrasi (melintasi domain, sub-domain, dan host web), bukan halangan dan tidak membutuhkan waktu sama sekali.

Ini adalah layanan berbayar (per domain/bulan), tetapi tidak sebanyak itu.

1
Larry

Ini adalah cara termudah yang pernah: https://themes.artbees.net/docs/website-migration/
Hanya membutuhkan dua klik. Satu untuk ekspor, satu untuk impor.

Itu dimungkinkan dengan menggunakan plugin All in one WP Migration. Tautan di atas menunjukkan cara menggunakannya.

1
Mohsenr1

Alat lain yang berguna untuk menangani migrasi server untuk situs-situs adalah WordPress CLI, artikel ini memiliki tinjauan yang baik tentang apa yang dapat dilakukannya tetapi secara khusus bagian untuk "Pencarian dan Ganti" berguna untuk menemukan semua referensi ke url situs dev lama/dev :

Manajemen WordPress Canggih Dengan WP-CLI

1
Rick Curran

Biarkan saya memberikan salah satu favorit saya :-)

// proven local<->live codefork (covers local network testing, i.e. from mobile devices):
$GLOBALS['is_local'] =  
    in_array( $_SERVER['REMOTE_ADDR'], array("127.0.0.1","::1")) || // simple localhost (IPv4 IPv6)
              $_SERVER['HTTP_Host'] == 'local.workblog'          || // call by local name (adjust)
       substr($_SERVER["REMOTE_ADDR"],0,8) == '192.168.';           // (mobile) device in local network

$table_prefix  = NULL; // ensure scope

if ( $GLOBALS['is_local'] )  // LOCAL fork ------------------------
{
        ....
}
else  // STAGE/LIVE fork -------------------
{

... dan kemudian Anda bekerja dengan cara Anda dari sana. DB_NAME, DB_USER ... table_prefix. Secara pribadi saya mengaktifkan ALTERNATE_WP_CRON di lokal (untuk menghindari beberapa peringatan yang mengganggu ), WP_DEBUG dari keduanya (jika Anda bukan pengembang) atau langsung saja (jika Anda), ini_set('display_errors', '0'); lainnya untuk live juga dapat melakukan bagus, semut terakhir, seperti yang disebutkan di atas: WP_HOME dan WP_SITEURL ke masing-masing lokal/URL aktual.

Cukup banyak, tidak ada yang tersisa di atas WordPress klasik 'Itu saja, berhentilah mengedit!' baris ...

192.168. bagian memungkinkan Anda melakukan pengujian lokal (mis. dari pembalut atau ponsel) dalam jaringan lokal Anda)

$ GLOBALS ['is_local'] dapat berguna dalam pengembangan tema Anda, juga, untuk beberapa output debug tambahan, dll ...

1
Frank Nocke

Setelah mengikuti jawaban ini untuk sementara waktu saya telah membuat plugin kecil saya sendiri - Pitta Migration . Alasannya adalah:

  1. Dari semua ide yang dicoba di sini - yang paling sederhana adalah opsi WP_HOME dan WP_SITEURL
  2. Saya kemudian menggunakan ini untuk mengatur dua URL wp_options yang cocok - yang mencakup ketika plugin/tema mengabaikannya
  3. Ini memberi saya kepercayaan diri 100% pada apa yang sedang diubah dalam database saya
  4. Ini juga berfungsi lintas platform (semua skrip bash tidak dapat diputar dengan baik di Windows)
  5. Sangat mudah untuk memahami apa yang dilakukan plugin
  6. Tidak ada konfigurasi di luar kedua konstanta - lakukan impor mysqldump dan mysql ke database lokal Anda dan plugin melihat bahwa konstanta dan tabel berbeda dan memperbarui mereka agar sesuai
  7. Tidak ada pencarian dan ganti teks
  8. Tidak ada kesempatan mengetuk basis data Anda - Saya menggunakan Objek Basis Data WordPress untuk melakukan dua pembaruan dan tidak lebih
  9. Ini dimainkan dengan baik dengan hal-hal seperti WordPress Skeleton di mana Anda dapat memiliki segalanya dalam kontrol sumber dan mengatur konfigurasi lokal
  10. Saya telah meletakkannya di direktori plugins WordPress dan pada Github sehingga gratis, sepenuhnya opensource, mudah bagi Anda untuk garpu dan mudah untuk menginstal
  11. Setelah terinstal, Anda bisa melupakannya dan itu seharusnya 'hanya berfungsi' - itu memberi Anda sedikit pemberitahuan untuk mengatakan bahwa database telah dimodifikasi
  12. Ini harus bekerja dengan proses backup/FTP/restore
0
icc97

Jika Anda mencoba mencapai sinkronisasi berkesinambungan, saya sarankan menggunakan rsync bersama dengan pekerjaan cron khusus untuk menulis ulang url atau data spesifik situs.

0
user92899

Menurut saya cara termudah yang saya ikuti adalah transfer manual .. Cukup salin folder wp-content dan file wp-config.php ke Host baru. Ekspor database dari Host lama dan impor dalam database baru Host baru ..

Dalam database Host baru, buka tabel opsi-wp dan ubah URL situs dan URL Blog ke alamat Host baru dari Host lama. suka dari http: // localhost/wp to http://example.com

Sekarang di file wp-config cukup ubah informasi database dan pengguna dengan info Host baru.

Sekarang login ke admin-wp baru dan pergi ke pengaturan dan menyimpan permalink.

Kamu selesai. Saya pikir ini sederhana tanpa menggunakan plugin apa pun.

Saya telah mencoba berbagai jenis plugin dan semuanya memiliki banyak masalah ..

Jadi saya lebih suka transfer manual sederhana ini yang menurut saya lebih mudah.

0