Diberikan jaringan WordPress Multisite, dengan blog utama, dan dengan asumsi semua konten telah dipindahkan ke blog itu, bagaimana orang akan merobohkan jaringan kembali ke instalasi WordPress non-jaringan non-multisite standar?
Diberikan jaringan WordPress Multisite, dengan blog utama, dan dengan asumsi semua konten telah dipindahkan ke blog itu, bagaimana orang akan merobohkan jaringan kembali ke instalasi WordPress non-jaringan non-multisite standar?
Jawaban:
Saya telah melalui langkah-langkah untuk mengekstrak situs dari instalasi multisite menjadi satu instance sekarang:
DELETE FROM wp_usermeta WHERE user_id NOT IN( SELECT distinct(user_id) FROM wp_usermeta where meta_key LIKE 'wp_SITEID_%' );
DELETE FROM wp_users WHERE ID NOT IN( SELECT distinct(user_id) FROM wp_usermeta where meta_key LIKE 'wp_SITEID_%' );
UPDATE wp_usermeta SET meta_key = REPLACE( meta_key, 'wp_SITEID_', 'wp_' ) WHERE meta_key LIKE 'wp_SITEID_%';
UPDATE wp_options SET option_name = REPLACE( option_name, 'wp_SITEID_', 'wp_' ) WHERE option_name LIKE 'wp_SITEID_%';
wp-config.php
tetapi jangan klik 'Jalankan instal'blogs.dir/SITE_ID/files
dengan uploads
, dan jika Anda mengubah pencarian URL situs Anda oldsite.com
dan ganti dengan newsite.com
.Upaya yang cukup adil dan Anda harus berhati-hati dengan pengeditan basis data, tetapi hanya itu yang dapat saya lihat untuk mengekstrak satu situs dari multisite yang ada dengan semua pengaturannya dll ... utuh.
EDIT:
Seperti yang terlihat oleh @Jake, saya lupa menyebutkan langkah terakhir yang mungkin perlu Anda ambil misalnya. cari / ganti dari URL lama. Saya telah memperbarui daftar sesuai.
SITEID
ke id situs yang benar. Alih-alih itu, Anda harus menyebutkan bahwa opsi siteurl
dan home
kemungkinan akan perlu diperbarui dalam wp_options
tabel. Sisanya adalah daftar periksa yang cukup bagus. Terima kasih.
Dimungkinkan untuk menghapus instalasi multisite tanpa menginstal ulang blog baru. Ikuti langkah-langkahnya.
WP_ALLOW_MULTISITE
di wp-config.php keFALSE
Hapus atau komentari pengaturan MU wp-config.php
, seperti ini:
/**
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false );
$base = '/wordpress/';
define( 'DOMAIN_CURRENT_SITE', 'localhost' );
define( 'PATH_CURRENT_SITE', '/wordpress/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
*/
Hapus pengaturan MU dari .htaccess
, seperti sumber di bawah ini:
# BEGIN WordPress
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
# END WordPress
Buat permalink baru, di backend wp-admin/options-permalink.php
dan mungkin salin hasilnya .htaccess
, jika tidak memungkinkan untuk WP, hak untuk menulis pada file ini.
Hapus entri yang tidak berguna dalam tabel users
; gunakan pernyataan sql ikuti di alat, seperti phpMyAdmin atau Adminer
`ALTER TABLE `wp_users` DROP `spam`, DROP `deleted`;`
Tabel follow dapat dijatuhkan:
(ubah wp_
ke awalan basis data Anda)
Sekarang Anda hanya memiliki tabel terakhir dari blog lain dalam jaringan. Jika Anda akan menggunakannya juga konten ini, maka ekspor ini sebelumnya melalui ekspor WordPress sebagai XML dan impor sekarang di instalasi tunggal bersih.
Sebenarnya itu mungkin dan cukup mudah dilakukan; Saya sudah melakukannya sendiri beberapa kali.
Ada beberapa hal yang perlu dipertimbangkan.
Mengomentari multi situs define (?) Di wp-config dan memperbarui permalink Anda akan mengembalikan situs ke mode situs / mode default. Maka yang harus Anda lakukan adalah membersihkan database Anda.
Jika karena alasan tertentu Anda tidak dapat mengakses wp-admin Anda untuk memperbarui permalinks cukup hapus file .htaccess Anda. WordPress akan membuatnya kembali untuk Anda dalam mode situs tunggal.
Saya akan melakukan yang terbaik untuk menemukan tautan ke kode / artikel pendukung dan memperbarui jawabannya.
Berikut ini tautan ke satu item di forum dukungan http://wordpress.org/support/topic/revert-to-single-site
Proses dasar di sini berfungsi dengan baik bahkan di WP 3.5.1 Satu klarifikasi: Jika Anda memberi nama subsite Anda sesuatu, Anda harus mengubah tautan dalam database untuk menghapus nama itu. Jika subsite saya bernama ... mysite.com/comics maka setelah mengikuti prosedur di atas, WP Anda akan mencari mysite.com/comics dan mendapatkan kesalahan pada permalinks. Edit tabel WP-OPTIONS mencari ekstensi / komik dan hapus. Juga, periksa apakah direktori Upload menunjuk ke lokasi yang tepat - mungkin masih menampilkan entri blogs.dir dan sekarang seharusnya menunjuk ke wp-content / uploads /