- 设置WP的干净副本但不要安装它
- 查找站点ID
- 将文件从blogs.dir / ID / files复制到新的WP uploads文件夹
- 将网站使用的主题及其使用的所有插件复制到新的wp-content文件夹中的相应文件夹中
- 备份多站点数据库,但仅备份目标站点的表以及使用MySQL工作台或等效版本的users和usermeta表
- 将备份还原到新数据库并更改表名前缀,以便它们都相同,例如。“ wp_SITEID_”到“ wp_”
- 使用MySQL工作台或查询浏览器整理用户和usermeta表,如下所示:
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安装过程以创建一个,
wp-config.php
但不要单击“运行安装” - 如果使用了永久链接,则创建一个默认的.htaccess文件,或者只是访问wp-admin中的永久链接页面
- 接下来,您需要更新数据库中的所有旧URL。理想情况下,请使用安全的搜索/替换工具,例如wp-cli中的工具或其通用的前体搜索/替换db(通过interconnect / it)。专门替换
blogs.dir/SITE_ID/files
为uploads
,如果要更改网站URL,请搜索oldsite.com
并替换为newsite.com
。
相当多的工作,您必须谨慎进行数据库编辑,但这是我唯一能看到的从现有多站点中提取所有设置等完整的站点。