Cara Memigrasikan Website Drupal ke WordPress: Panduan Teknis Lengkap
Migrasi dari Drupal ke WordPress berarti memindahkan konten database, file media, struktur URL, dan akun pengguna dari arsitektur CMS berbasis entitas Drupal ke model post-type WordPress — tanpa kehilangan ekuitas SEO, merusak tautan internal, atau menyebabkan downtime. Prosesnya melibatkan impor konten di tingkat database melalui plugin FG Drupal to WordPress, diikuti oleh pemetaan permalink, konfigurasi redirect 301, dan rekonstruksi tema.
Panduan ini mencakup setiap fase migrasi tersebut secara detail teknis yang tepat: strategi backup pra-migrasi, pengaturan lingkungan, ekstraksi kredensial database, impor berbasis plugin, rekonsiliasi struktur URL, dan validasi pasca-peluncuran. Baik Anda menjalankan Drupal 7, 9, atau 10, alur kerja di bawah ini berlaku.
Mengapa Bermigrasi dari Drupal ke WordPress
Drupal adalah framework yang powerful, namun kompleksitasnya membawa biaya operasional yang nyata. Pembaruan modul sering kali memperkenalkan perubahan yang merusak, theming memerlukan keahlian template Twig, dan pengeditan konten rutin membutuhkan keterlibatan developer. WordPress, sebaliknya, menawarkan kurva pembelajaran yang lebih mudah, ekosistem plugin yang jauh lebih besar, dan total biaya kepemilikan yang lebih rendah untuk situs yang padat konten yang tidak memerlukan kontrol akses granular atau pemodelan konten kompleks milik Drupal.
Argumen performa juga penting. Instalasi WordPress pada lingkungan VPS Hosting yang dikonfigurasi dengan benar menggunakan LiteSpeed, object caching, dan penyimpanan NVMe akan secara konsisten mengungguli stack Drupal yang membengkak pada infrastruktur shared.
Motivasi migrasi utama berdasarkan kasus penggunaan:
- Tim editorial yang frustrasi dengan UX admin Drupal dan alur kerja penerbitan yang lambat
- Agensi yang mengkonsolidasikan situs klien ke dalam satu CMS yang mudah dikelola
- Developer yang mengurangi overhead pemeliharaan dari rantai dependensi modul Drupal
- Tim SEO yang mencari integrasi lebih erat dengan alat native WordPress seperti Yoast atau Rank Math
Drupal vs. WordPress: Perbandingan Arsitektur
Memahami perbedaan struktural antara kedua platform sangat penting sebelum Anda memulai. Asumsi yang tidak sesuai tentang cara konten disimpan adalah penyebab utama migrasi yang gagal atau tidak lengkap.
| Dimensi | Drupal | WordPress |
|---|---|---|
| Model konten | Entitas (node, istilah taksonomi, field) | Tipe post (posts, pages, CPT) |
| Skema database | Sangat ternormalisasi, multi-tabel per tipe konten | Model wp_posts + wp_postmeta yang flat |
| Routing URL | Alias path disimpan di tabel path_alias | Aturan rewrite permalink melalui .htaccess |
| Engine theming | Template Twig + hook Preprocess | Hierarki template PHP + hook |
| Peran pengguna | Izin granular per peran | Hierarki peran tetap (Subscriber → Admin) |
| Penanganan media | Entitas file terkelola dengan lampiran field | Media Library dengan tipe post lampiran |
| Multibahasa | Modul Language inti | Memerlukan plugin WPML atau Polylang |
| REST API | Modul inti JSON:API + REST | WP REST API bawaan |
| Kompleksitas hosting | Tinggi (memerlukan Composer, Drush) | Rendah (stack LAMP/LEMP standar) |
| Ekosistem plugin/modul | ~50.000 modul | ~60.000+ plugin |
Kesenjangan arsitektur paling kritis adalah model entitas konten. Drupal menyimpan paragraf, field kustom, dan referensi taksonomi di beberapa tabel yang digabungkan. Plugin FG Drupal to WordPress memetakan ini ke post meta dan istilah taksonomi WordPress, tetapi tata letak berbasis paragraf yang kompleks akan memerlukan rekonstruksi manual.
Daftar Periksa Pra-Migrasi
Sebelum menyentuh salah satu lingkungan, selesaikan setiap item dalam daftar ini. Melewati langkah-langkah di sini adalah penyebab utama kehilangan data dan downtime yang berkepanjangan.
- Audit inventaris konten Drupal Anda: tipe node, kosakata taksonomi, jumlah pengguna, jumlah file, dan total ukuran database
- Identifikasi modul Drupal yang tidak memiliki padanan di WordPress (misalnya, Rules, logika kompleks Webform, Commerce)
- Konfirmasi server WordPress Anda memenuhi persyaratan minimum: PHP 8.1+, MySQL 8.0+ atau MariaDB 10.6+, batas memori PHP 256 MB
- Tentukan jendela migrasi — idealnya periode lalu lintas rendah
- Aktifkan mode pemeliharaan di Drupal selama proses impor akhir untuk mencegah pergeseran konten
- Verifikasi bahwa server WordPress dapat menjangkau host database Drupal (server yang sama, host jarak jauh, atau SSH tunnel)
Langkah 1: Backup Website Drupal Anda
Backup yang lengkap dan terverifikasi adalah hal yang tidak dapat ditawar. Anda memerlukan dump database dan direktori file.
Backup Database melalui Drush
Jika Anda telah menginstal Drush (standar untuk Drupal 9/10), ini adalah metode tercepat:
drush sql-dump --result-file=/var/backups/drupal_backup_$(date +%Y%m%d).sql --gzipBackup Database melalui mysqldump
mysqldump -u drupal_user -p drupal_database_name | gzip > /var/backups/drupal_backup_$(date +%Y%m%d).sql.gzBackup Direktori File
tar -czf /var/backups/drupal_files_$(date +%Y%m%d).tar.gz /var/www/html/drupal/sites/default/files/Backup phpMyAdmin (Metode GUI)
- Masuk ke phpMyAdmin melalui panel kontrol hosting Anda
- Pilih database Drupal dari sidebar kiri
- Klik Export, pilih metode ekspor Quick, format SQL
- Klik Go untuk mengunduh file
.sql
Simpan semua arsip backup di luar server — unggah ke penyimpanan jarak jauh atau unduh secara lokal melalui SFTP. Backup yang hanya ada di server yang sama dengan situs yang sedang dimigrasi bukanlah backup yang sesungguhnya.
Langkah 2: Siapkan WordPress di Server Target Anda
Instal instans WordPress baru di lingkungan target Anda. Jangan impor konten Drupal ke situs WordPress yang sudah ada kecuali Anda telah merencanakan penggabungan konten secara eksplisit — importer tidak akan melakukan deduplikasi.
Persyaratan Server
| Persyaratan | Minimum | Direkomendasikan |
|---|---|---|
| Versi PHP | 7.4 | 8.2 |
| MySQL/MariaDB | MySQL 5.7 / MariaDB 10.3 | MySQL 8.0 / MariaDB 10.11 |
| Batas memori PHP | 64 MB | 256 MB |
max_execution_time | 30s | 300s |
upload_max_filesize | 8 MB | 128 MB |
Untuk situs Drupal besar (10.000+ node, perpustakaan media multi-GB), VPS dengan cPanel memberi Anda akses langsung ke konfigurasi PHP, parameter tuning MySQL, dan manajemen cron job — semuanya akan Anda butuhkan selama migrasi berat.
Instalasi WordPress melalui WP-CLI
cd /var/www/html/wordpress
wp core download
wp config create --dbname=wp_database --dbuser=wp_user --dbpass=secure_password --dbhost=localhost
wp core install --url="https://yourdomain.com" --title="Site Title" --admin_user=admin --admin_password=strongpassword --admin_email=admin@yourdomain.comInstalasi Satu Klik melalui cPanel
Jika host Anda menyediakan cPanel, navigasikan ke Softaculous Apps Installer, pilih WordPress, isi kredensial database dan admin, lalu klik Install. Prosesnya memakan waktu kurang dari dua menit.
Setelah instalasi, segera konfigurasikan pengaturan PHP ini di php.ini atau melalui .htaccess:
php_value max_execution_time 300
php_value memory_limit 256M
php_value post_max_size 128M
php_value upload_max_filesize 128MLangkah 3: Instal dan Konfigurasikan Plugin FG Drupal to WordPress
Plugin FG Drupal to WordPress (tier gratis tersedia; Premium direkomendasikan untuk situs besar) menangani migrasi di tingkat database untuk node, istilah taksonomi, pengguna, dan file media.
Instalasi
- Di admin WordPress Anda, buka Plugins > Add New
- Cari
FG Drupal to WordPress - Klik Install Now, lalu Activate
Atau, instal melalui WP-CLI:
wp plugin install fg-drupal-to-wp --activatePerbandingan Fitur Gratis vs. Premium
| Fitur | Gratis | Premium |
|---|---|---|
| Dukungan Drupal 6/7 | Ya | Ya |
| Dukungan Drupal 8/9/10 | Sebagian | Penuh |
| Migrasi Paragraphs | Tidak | Ya |
| Migrasi pengguna | Tidak | Ya |
| Migrasi Webform | Tidak | Ya |
| E-commerce (Drupal Commerce) | Tidak | Ya |
| Konten multibahasa | Tidak | Ya |
| Dukungan prioritas | Tidak | Ya |
Untuk situs produksi mana pun yang menjalankan Drupal 8 atau lebih baru, versi Premium sepadan dengan biayanya. Mencoba merekonstruksi konten berbasis paragraf secara manual jauh lebih mahal dalam hal waktu developer.
Langkah 4: Kumpulkan Kredensial Database Drupal
Plugin FG Drupal to WordPress terhubung langsung ke database Drupal Anda. Anda memerlukan empat nilai: nama database, nama pengguna, kata sandi, dan host.
Menemukan Kredensial di settings.php Drupal
grep -A 20 "'database'" /var/www/html/drupal/sites/default/settings.phpOutputnya akan berisi blok seperti ini:
$databases['default']['default'] = [
'database' => 'drupal_db_name',
'username' => 'drupal_db_user',
'password' => 'drupal_db_password',
'host' => 'localhost',
'port' => '3306',
'driver' => 'mysql',
];Pertimbangan Akses Database Jarak Jauh
Jika WordPress dan Drupal berada di server yang berbeda, database Drupal harus menerima koneksi jarak jauh. Di server database Drupal:
GRANT SELECT ON drupal_database.* TO 'drupal_user'@'wordpress_server_ip' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;Pastikan juga port 3306 terbuka di firewall hanya untuk IP server WordPress — jangan pernah mengekspos MySQL ke 0.0.0.0.
Jika Anda tidak dapat membuka port MySQL langsung, gunakan SSH tunnel:
ssh -L 3307:localhost:3306 user@drupal_server_ip -N -fKemudian atur host database plugin ke 127.0.0.1 dan port ke 3307.
Langkah 5: Jalankan Impor Konten
Navigasikan ke Tools > Import di dashboard WordPress Anda, gulir ke bagian Drupal, dan klik Run Importer.
Konfigurasi Pengaturan Importer
Tab koneksi database:
- Host database:
localhost(atau IP jarak jauh / alamat SSH tunnel) - Port:
3306(atau port kustom Anda) - Nama database: nilai dari
settings.php - Nama pengguna / Kata sandi: nilai dari
settings.php - URL file Drupal: URL publik direktori
sites/default/files/Drupal Anda — diperlukan untuk pengunduhan media
Klik Test the connection sebelum melanjutkan. Koneksi yang gagal pada tahap ini hampir selalu disebabkan oleh salah satu dari tiga masalah: kredensial yang salah, firewall yang memblokir port MySQL, atau pengguna database Drupal yang tidak memiliki hak SELECT pada database target.
Tab perilaku — pengaturan yang direkomendasikan untuk sebagian besar migrasi:
- Impor posts: Ya
- Impor pages: Ya
- Impor kategori dan tag: Ya
- Unduh gambar dan lampiran: Ya (diperlukan untuk menyalin media ke direktori upload WordPress)
- Hapus data WordPress sebelum impor: Ya (hanya pada instalasi baru — ini akan memotong
wp_postsdan tabel terkait)
Memulai Impor
Klik Start / Resume the Importer. Plugin memproses konten dalam batch. Untuk situs besar, impor mungkin timeout dan memerlukan beberapa siklus resume — ini adalah perilaku yang diharapkan, bukan kesalahan. Cukup klik Resume setiap kali.
Pantau log impor yang ditampilkan di layar. Perhatikan:
Error downloading file — menunjukkan URL file Drupal salah atau direktori file tidak dapat diakses secara publik
Error Duplicate entry — biasanya tidak berbahaya, menunjukkan plugin melewati catatan yang sudah diimpor saat resume
MySQL server has gone away — menunjukkan wait_timeout terlalu rendah di server MySQL; tingkatkan setidaknya ke 600 detik
SET GLOBAL wait_timeout = 600;
SET GLOBAL interactive_timeout = 600;
Langkah 6: Rekonsiliasi Struktur URL dan Konfigurasi Redirect
Ini adalah langkah yang paling sering diremehkan oleh sebagian besar panduan. Ketidaksesuaian struktur URL antara Drupal dan WordPress adalah penyebab utama penurunan peringkat SEO pasca-migrasi.
Pola URL Drupal (Umum)
Pola URL Drupal
Deskripsi
/node/123
Path node default (tanpa alias)
/about-us
Alias path (paling umum)
/taxonomy/term/5
Halaman istilah taksonomi
/user/1
Profil pengguna
/content/article-title
Alias dengan awalan tipe konten
Konfigurasi Permalink WordPress
Buka Settings > Permalinks dan pilih struktur yang paling mendekati alias path Drupal Anda. Untuk sebagian besar situs Drupal yang menggunakan alias bersih, /%postname%/ adalah pilihan yang tepat.
/%postname%/
Jika situs Drupal Anda menggunakan URL dengan awalan kategori seperti /blog/article-title, gunakan:
/%category%/%postname%/
Mengimplementasikan Redirect 301
Instal plugin Redirection (oleh John Godley) untuk mengelola aturan redirect. Untuk redirect massal, ekspor alias path Drupal Anda dari database:
SELECT source, alias FROM path_alias WHERE langcode = 'en';
Kemudian impor CSV yang dihasilkan ke plugin Redirection, memetakan setiap alias Drupal ke padanannya di WordPress. Untuk URL bergaya /node/123 yang tidak pernah memiliki alias, buat redirect berbasis regex:
/node/([0-9]+)$ → /?p=$1
Ini memetakan ID node Drupal ke ID post WordPress — tetapi hanya berfungsi jika plugin FG mempertahankan ID node asli sebagai ID post, yang dilakukannya secara default.
Penting: Uji setiap redirect dengan curl -I sebelum go live:
curl -I https://yourdomain.com/old-drupal-path
Verifikasi responsnya adalah HTTP/2 301 dengan header Location yang benar, bukan 302 atau 200 dengan redirect soft.
Langkah 7: Migrasi Tema dan Rekonstruksi Desain
Tema Drupal (berbasis Twig) tidak memiliki padanan langsung di WordPress. Anda harus merekonstruksi desain visual menggunakan tema WordPress sebagai fondasi.
Strategi Pemilihan Tema
Tema berbasis blok (FSE): Gunakan WordPress Site Editor untuk kontrol tata letak penuh tanpa page builder. Terbaik untuk developer yang nyaman dengan markup blok.
Tema klasik dengan page builder: Tema seperti Astra atau GeneratePress yang dipasangkan dengan Elementor atau Bricks Builder menawarkan padanan terdekat dengan Layout Builder Drupal.
Child theme kustom: Jika situs Drupal Anda memiliki desain yang sangat dikustomisasi, buat child theme berdasarkan parent minimal (Underscores, Blocksy) dan replikasi CSS-nya.
Merekonstruksi Menu Navigasi
Menu Drupal tidak bermigrasi secara otomatis. Rekonstruksi di bawah Appearance > Menus (tema klasik) atau blok Navigation Site Editor (tema FSE). Referensikan struktur menu Drupal Anda:
drush eval "print_r(menu_tree_all_data('main', NULL));"
Atau query database secara langsung:
SELECT ml.link_path, ml.link_title, ml.weight, ml.depth
FROM menu_links ml
WHERE ml.menu_name = 'main-menu' AND ml.hidden = 0
ORDER BY ml.weight;
Widget dan Blok
Blok Drupal secara longgar dipetakan ke widget WordPress dan blok Gutenberg. Rekonstruksi region sidebar dan footer di bawah Appearance > Widgets atau langsung di Site Editor. Tipe blok Drupal kustom dengan logika PHP perlu direkonstruksi sebagai shortcode WordPress atau blok kustom.
Langkah 8: Audit Konten Pasca-Migrasi
Jangan lewati fase ini. Alat migrasi otomatis menangani konten terstruktur dengan baik tetapi gagal secara diam-diam pada kasus tepi.
Pemeriksaan Integritas Konten
Media yang disematkan: Referensi file inline Drupal menggunakan format token kustom ([file:123] atau <drupal-media uuid="..."/>). Ini tidak akan dirender di WordPress. Cari token ini di database:
SELECT ID, post_title FROM wp_posts WHERE post_content LIKE '%drupal-media%' OR post_content LIKE '%[file:%';
Shortcode dan Views: Drupal Views tidak memiliki padanan di WordPress. Halaman mana pun yang merender View (misalnya, daftar konten yang difilter) akan kosong. Rekonstruksi menggunakan WP_Query, arsip tipe post kustom, atau plugin seperti Posts Table Pro.
Field kustom: Data field Drupal yang dimigrasi melalui plugin Premium akan masuk ke wp_postmeta. Verifikasi nilai field sudah ada:
SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE meta_key LIKE 'field_%' LIMIT 50;
Akun pengguna: Jika Anda memigrasikan pengguna, verifikasi pemetaan peran. Peran authenticated user Drupal dipetakan ke WordPress Subscriber. Drupal editor dipetakan ke WordPress Editor. Drupal administrator dipetakan ke WordPress Administrator. Audit pemetaan dan sesuaikan sesuai kebutuhan.
Deteksi Tautan Rusak
Instal Broken Link Checker atau jalankan crawl dengan Screaming Frog terhadap lingkungan staging Anda sebelum cutover DNS. Perbaiki semua 404 internal sebelum go live — jangan mengandalkan pemantauan pasca-peluncuran untuk mendeteksi ini.
Langkah 9: Penguatan Performa dan Keamanan
Situs WordPress yang baru dimigrasi perlu diperkuat sebelum siap untuk produksi.
Konfigurasi Caching
Instal LiteSpeed Cache (jika di server LiteSpeed) atau W3 Total Cache / WP Rocket untuk lingkungan Apache/Nginx. Konfigurasikan:
Cache halaman dengan TTL minimal 3600 detik untuk halaman statis
Object cache yang didukung oleh Redis atau Memcached
Header cache browser melalui .htaccess atau konfigurasi server
SSL/HTTPS
Pastikan situs WordPress Anda disajikan secara eksklusif melalui HTTPS. Jika Anda belum memiliki sertifikat, SSL Certificates dapat disediakan dengan cepat dan dikonfigurasi untuk diperbarui secara otomatis. Perbarui pengaturan URL situs WordPress:
wp option update siteurl 'https://yourdomain.com'
wp option update home 'https://yourdomain.com'
Paksa HTTPS di .htaccess:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Daftar Periksa Penguatan Keamanan
Nonaktifkan XML-RPC jika tidak diperlukan: tambahkan add_filter('xmlrpc_enabled', '__return_false'); ke functions.phpwp_ default (memerlukan penggantian nama database — lakukan ini sebelum impor jika memungkinkan)755, file 644, wp-config.php 600find /var/www/html/wordpress -type d -exec chmod 755 {} ;
find /var/www/html/wordpress -type f -exec chmod 644 {} ;
chmod 600 /var/www/html/wordpress/wp-config.phpLangkah 10: Cutover DNS dan Peluncuran
Lakukan cutover DNS selama jendela lalu lintas terendah Anda. Prosesnya seharusnya memakan waktu kurang dari 15 menit pekerjaan aktual, dengan jendela propagasi hingga 48 jam (biasanya 1–4 jam untuk sebagian besar resolver).
Pemeriksaan Akhir Sebelum Cutover
- Jalankan crawl penuh pada URL staging dan konfirmasi nol 404
- Verifikasi semua redirect 301 mengembalikan header
Locationyang benar - Uji formulir kontak, fungsionalitas pencarian, dan alur e-commerce apa pun
- Konfirmasi Google Search Console terverifikasi di situs baru
- Buat dan kirimkan sitemap XML baru melalui Yoast SEO atau Rank Math
Proses Pembaruan DNS
Jika Anda mendaftarkan domain Anda melalui Domain Registration, perbarui record A langsung di panel manajemen DNS. Turunkan TTL ke 300 detik setidaknya 24 jam sebelum cutover untuk meminimalkan penundaan propagasi.
A record: yourdomain.com → [new WordPress server IP]
TTL: 300 (pre-cutover), restore to 3600 post-cutoverPemantauan Pasca-Peluncuran
- Aktifkan alat change of address Google Search Console jika domain itu sendiri berubah
- Pantau Core Web Vitals di Search Console selama 30 hari pertama — perkirakan fluktuasi peringkat sementara saat Google merayapi ulang dan mengindeks ulang
- Siapkan UptimeRobot atau yang setara untuk pemantauan ketersediaan
- Periksa log error server setiap hari selama minggu pertama:
tail -f /var/log/apache2/error.log
# or for Nginx:
tail -f /var/log/nginx/error.logPengiriman Ulang ke Mesin Pencari
Kirimkan sitemap yang diperbarui di Google Search Console:
- Buka Search Console > Sitemaps
- Masukkan
sitemap.xml(atausitemap_index.xmluntuk situs besar) - Klik Submit
Kirimkan juga ke Bing Webmaster Tools dan verifikasi situs secara independen di sana — indeks Bing digunakan oleh beberapa mesin pencari AI termasuk Copilot.
Rekomendasi Infrastruktur Hosting
Performa situs WordPress yang dimigrasi sangat bergantung pada infrastruktur yang mendasarinya. Migrasi Drupal ke WordPress adalah waktu yang ideal untuk juga memodernisasi stack hosting Anda.
Untuk situs dengan lalu lintas sedang (10.000–100.000 kunjungan bulanan), paket VPS Hosting dengan setidaknya 2 vCPU, 4 GB RAM, dan penyimpanan NVMe memberikan ruang yang cukup untuk WordPress dengan full-page caching. Untuk situs dengan lalu lintas tinggi atau intensif sumber daya, Dedicated Servers sepenuhnya menghilangkan masalah noisy-neighbor dan memberi Anda kontrol penuh atas parameter kernel, konfigurasi MySQL, dan tuning stack jaringan.
Jika Anda mengelola beberapa situs klien atau lebih suka pengalaman manajemen server berbasis GUI, VPS Control Panels menawarkan berbagai pilihan termasuk cPanel, Plesk, dan DirectAdmin — masing-masing mendukung manajemen WordPress multi-situs, backup otomatis, dan penyediaan SSL dari satu antarmuka.
Matriks Keputusan Teknis: Kapan Menggunakan Setiap Pendekatan Migrasi
| Skenario | Pendekatan yang Direkomendasikan | Alat Utama |
|---|---|---|
| Drupal 7, situs kecil (<500 node) | Tier gratis plugin FG, server yang sama | FG Drupal to WordPress (gratis) |
| Drupal 9/10, konten berbasis paragraf | Plugin FG Premium, server staging | FG Drupal to WordPress Premium |
| Drupal Commerce → WooCommerce | FG Premium + add-on WooCommerce | FG + modul migrasi WooCommerce |
| Situs Drupal multibahasa | FG Premium + WPML | FG + plugin WPML |
| Drupal dengan Views kompleks | Rekonstruksi manual diperlukan | WP_Query + CPT UI |
| Migrasi server berbeda | SSH tunnel untuk akses DB | Port forwarding SSH |
| Persyaratan zero-downtime | Deployment blue-green | Pengurangan TTL DNS + staging |
Poin Teknis Utama
- Backup sebelum hal lainnya. Dump SQL yang dikompresi dan tarball dari
sites/default/files/adalah jaring pengaman Anda. Verifikasi keduanya lengkap dan dapat dipulihkan sebelum memulai. - Uji konektivitas database sebelum menjalankan importer. Sebagian besar migrasi yang gagal terhenti pada uji koneksi karena aturan firewall atau grant
SELECTyang hilang. - Konten Drupal berbasis paragraf memerlukan plugin Premium. Tier gratis akan secara diam-diam melewati field paragraf, membuat konten tidak lengkap tanpa pesan error.
- Redirect 301 bukan opsional. Setiap URL Drupal yang memiliki backlink eksternal atau pengindeksan mesin pencari harus diredirect ke padanannya di WordPress dengan 301 permanen. Redirect yang hilang adalah sinyal peringkat yang hilang.
- Turunkan TTL DNS 24 jam sebelum cutover. Atur ke 300 detik agar propagasi selesai dalam hitungan menit, bukan jam, saat Anda mengubah record A.
- Audit
wp_postmetauntuk field Drupal yang tidak dipetakan. Data field kustom masuk ke sana setelah impor — verifikasi keberadaan dan kunci yang benar sebelum menonaktifkan instans Drupal. - Jangan segera menonaktifkan Drupal. Pertahankan lingkungan Drupal berjalan (dalam mode pemeliharaan, tidak dapat diakses publik) setidaknya 30 hari pasca-peluncuran sebagai referensi dan opsi rollback.
- Kirimkan ulang sitemap Anda pada hari yang sama Anda go live. Jangan menunggu Googlebot menemukan struktur baru secara organik — pengiriman aktif mempercepat perayapan ulang.
FAQ
Bisakah saya memigrasikan instalasi multisite Drupal ke WordPress?
Ya, tetapi setiap subsitus Drupal harus dimigrasi secara individual. Plugin FG Drupal to WordPress tidak menangani multisite Drupal secara native dalam satu proses. Jalankan impor terpisah untuk setiap subsitus, menargetkan jaringan WordPress Multisite atau instalasi WordPress mandiri tergantung pada arsitektur Anda.
Apakah kata sandi pengguna Drupal saya akan berpindah ke WordPress?
Tidak. Drupal menggunakan hash SHA-512 yang diberi salt (atau bcrypt di versi yang lebih baru) yang tidak kompatibel dengan hashing berbasis phpass WordPress. Plugin FG Premium memigrasikan akun pengguna tetapi mereset kata sandi, memicu email reset kata sandi ke setiap pengguna. Rencanakan komunikasi pengguna sesuai kebutuhan.
Bagaimana cara menangani tipe konten Drupal yang tidak memiliki padanan di WordPress?
Daftarkan Custom Post Types (CPT) yang setara di WordPress sebelum menjalankan impor. Plugin FG Premium memungkinkan Anda memetakan tipe konten Drupal ke CPT WordPress. Tanpa pemetaan ini, semua node akan default ke tipe post post, yang akan meruntuhkan taksonomi konten Anda.
Apa yang terjadi pada istilah taksonomi Drupal selama migrasi?
Kosakata Drupal dipetakan ke taksonomi WordPress. Pemetaan default mengonversi tags Drupal ke tag WordPress dan categories Drupal ke kategori WordPress. Kosakata kustom memerlukan pendaftaran taksonomi manual di WordPress sebelum impor, atau akan dihapus.
Berapa lama migrasi untuk situs Drupal besar?
Untuk situs dengan 5.000 node dan 2 GB media, perkirakan 2–4 jam waktu impor di server yang memiliki sumber daya memadai, ditambah 4–8 jam untuk audit konten pasca-migrasi dan konfigurasi redirect. Cutover DNS aktual memakan waktu kurang dari 15 menit. Total waktu yang berlalu dari awal hingga live biasanya satu hingga dua hari kerja untuk migrasi yang menyeluruh dan berkualitas produksi.
