有时,站点已在 WordPress 多站点网络中创建,但需要移至其自己的单站点安装。有几种情况可能会发生这种情况,包括:
- 该网站已经变得太大,无法包含在网络中。
- 该网站需要有自己的 IP 地址。
- 网站所有者正在更换提供商或接管网站本身的全部管理。
在某些情况下,您可能会发现可以使用插件或插件组合将站点移出多站点,但如果这不起作用,您将需要移动相关的数据库表。以这种方式将站点移出多站点网络是一个棘手的过程,因为它涉及隔离多站点数据库中与该特定站点相关的数据库表。但这并非不可能。
您需要什么
要学习本教程,您需要:
- WordPress 多站点安装,其中包含一个您想要移至其自己的 WordPress 安装的子网站。
- 您要将网站移至的第二个位置。
- 对于手动移动,您需要 FTP 客户端、代码编辑器以及 phpMyAdmin 的访问权限。
注意:您无法将主站点移出多站点网络,因为如果没有它,网络将无法工作。如果您确实需要将主网站的内容移动到其他地方,我建议您创建一个副本,然后用虚拟网站替换原始网站的内容。不过,您将无法移动该域名,因为您网络中的所有其他网站也在使用该域名。
使用插件将站点迁移出多站点
如果您的网站没有通过插件、主题或网站设置屏幕进行大量配置,您可以使用 WordPress 导入器插件成功移动它。如果网站有小部件,您可以使用小部件设置导入器/导出器插件复制它们的设置。
但是,如果您使用设置或选项屏幕或主题定制器添加了大量定制配置,则这些配置都不会被复制。在这种情况下,您需要手动移动。
有关如何使用这些插件移动站点的完整详细信息,请参阅我之前关于使用插件移动 WordPress 站点的教程。该过程与将站点从多站点网络移动到其自己的 WordPress 安装完全相同。
手动将站点迁移出多站点
您要从多站点移出的站点将包含您需要从多站点网络复制的三个组件:
- 主题和插件文件 - 您可以复制这些文件或在新网站中重新安装它们
- uploads — 您可以在
wp-content/uploads/sites
的网站子目录中找到这些内容 - 数据库表 - 您不需要所有数据库表,只需要与此网站相关的数据库表
注意:如果您的多站点网络是在 WordPress 3.5 之前创建的,则您不会有 sites
文件夹。相反,您将在 wp-content
中拥有一个 blogs.dir
文件夹,其中包含子网站的所有上传文件。这将为您要迁移的网站提供一个编号文件夹,您可以复制该文件夹。我将在下面更详细地介绍这一点。
您真的需要移动网站吗?
开始之前,请考虑一下您要迁移网站的原因。难道纯粹是为了换个新域名吗?如果是这种情况,那么免费的域映射插件将允许您为各个站点提供自己的域,并且访问者将永远不会看到您的多站点网络的域。
但如果这不是唯一的原因,请继续阅读!
首先备份
在执行此类操作之前,最好备份您的多站点安装。使用您喜欢的备份插件,或者如果您喜欢手动工作,则使用 FTP 和 phpMyAdmin 的组合。
您将使用此备份将相关文件复制到您的新网站,并且在遇到任何问题时也能让您高枕无忧。
在多站点网络中查找您的站点的 ID
多站点网络中的每个站点都有自己唯一的数字 ID。这用于标识 wp-content/uploads/sites
目录中的文件夹(或者 wp-content/blogs.dir
如果您的多站点网络较旧,请参见上文) ,并识别该站点的数据库表。
转至网络管理 > 网站,然后选择您正在使用的网站的编辑选项即可找到此内容。 WordPress 引导您访问的 URL 将为您提供网站的 ID。 URL 的格式应为 http://mynetwork.com/wp-admin/network/site-info.php?id=XX
。
XX
是您站点的 ID,并且将是包含其文件的文件夹的名称,以及其数据库表名称的前缀。
p>
从网络导出站点的表
由于您仅移动一个子站点而不是整个安装,因此您不需要整个数据库的内容。
在PhpMyAdmin中,单击导出选项卡。然后找到与您要导出的站点相关的表。它们将以 wp_XX_
开头,其中 XX
是您网站的 ID。下面显示了一个示例。
选择与您的子网站相关的所有表格,然后导出它们。
注意:WordPress Multisite 将与网络用户相关的所有数据存储在 wp_users
和 wp_usermeta
表中:它不会为每个站点创建单独的数据。如果您的网站上有很多用户想要从网络复制,那么您可能还需要导出这些表,将它们导入到新网站并在管理屏幕中编辑用户以删除任何不存在的用户。与新网站相关。但是,如果您的网站只有一两个用户,则在新网站上重新创建用户会更容易。有关多站点和数据库表的详细信息,请参阅有关 WordPress 数据库和多站点的教程。
编辑数据库表
复制已下载到您计算机上的 sql
文件,并为其指定一个名称(例如,将 copy
添加到其名称中) )。在代码编辑器中打开它。
编辑链接
将多站点网络中站点域的所有实例更改为其新的单站点域。例如,如果您的网站位于 http://network.com/mysite
,请将其更改为 http://mysite.com
。如果您的网络使用子域,则需要更改 http://mysite.network.com
的所有实例。如果您这样做,我建议您还运行检查子目录版本以防万一。保存您的文件。
注意:如果您的网站映射了一个域,但该域不是您要将其移动到的域,则您也需要将其替换为新域。这里要非常小心,并保留备份!
编辑表引用
新的单站点安装中的数据库表不会有站点 ID 的前缀,因此您需要删除它们。在 sql
文件中,将 wp_XX_
的所有实例替换为 wp_
,其中 XX
是您的站点 ID。 p>
现在保存 sql
文件。
安装 WordPress 并在新位置创建数据库
在 phpMyAdmin 中,在新站点的位置创建一个新数据库,并以正常方式安装 WordPress。
将文件上传到新网站
识别子网站使用的插件,然后通过插件屏幕将它们安装到您的新 WordPress 网站中,或者从您对旧网站的备份上传它们。
对您网站使用的任何主题执行相同的操作 - 将它们从备份复制到新的独立 WordPress 安装的 wp-content/themes
目录,或者只是重新安装它们。
将上传内容从旧网站复制到新网站:
- 如果网络是在 WordPress 3.5 之后创建的,则它将在
wp-content/uploads
中包含一个sites
文件夹。找到包含您网站 ID 的子文件夹,并将其内容上传到新网站中的wp-content/uploads
文件夹。 - 如果网络较旧,并且有一个
blogs.dir
文件夹,该文件夹还将包含一个包含您网站 ID 的文件夹。然后会有一个名为files
的子文件夹。将files
文件夹的内容复制到新网站中的wp-content/uploads
文件夹。
注意:您可能需要删除 WordPress 在新的 uploads
文件夹中创建的所有文件夹,以避免任何冲突。
完成所有这些后,激活所有主题和插件。
将表导入新数据库
现在您已经安装了主题和插件,您需要导入数据库表。
删除现有表
在从旧网站上传表格之前,您需要删除 WordPress 添加到新网站的重复表格。
在 phpMyAdmin 中,从数据库中删除以下表:
wp_commentmeta
wp_comments
wp_links
wp_options
wp_postmeta
wp_posts
wp_terms
wp_term_relationships
wp_term_taxonomy
屏幕截图显示了我的数据库,其中仅选择了这些表:
选择它们,单击选择:下拉框,然后选择删除。出现提示时,点击开始。
注意:不要删除<em>wp_usermeta</em>
或<em>wp_users</em>
表,除非您也选择从网络复制这些表(参见上文)。
上传数据库表
接下来上传您编辑过的数据库:
- 点击导入标签。
- 点击选择文件按钮。
- 选择您已编辑的 sql 文件,然后点击选择或确定。
- 点击开始按钮。
- 一段时间后(取决于数据库的大小),您将看到一条消息,告诉您上传已成功完成。
最终步骤
清除浏览器的缓存。这可以避免浏览器缓存了旧网站的内容时可能遇到的任何问题。
现在登录远程站点的 WordPress 管理员。如果您移动了用户表,您的登录详细信息将与旧网站相同,但如果您没有这样做,这些详细信息将是您在新位置安装 WordPress 时指定的内容。
访问永久链接屏幕并重新打开漂亮的永久链接。
检查您的所有链接是否工作正常,小部件和插件是否按其应有的方式运行。如果没有,您可以退回到该过程,在需要的地方使用备份,或者只是在新网站中设置插件和小部件。
从多站点网络中删除站点
一旦您对一切正常运转感到完全满意,请从多站点安装中删除该站点。我建议将其保留一周左右,以防您发现任何未移动的东西。与此同时,您可以使用插件或在 CPanel 中配置旧站点的域以映射到新站点。
唷!这是一个漫长且稍微复杂的过程,但您已经完成了。
摘要
将站点从 WordPress Multisite 迁移到其自己的安装中并不是一件可以快速完成或不彻底完成的事情,但这是可能的,而且我已经这样做过几次了。如果您按照上述步骤操作并确保有备份以防出现任何问题,那么您应该会发现它对您来说很顺利。
2、本站所有文章、图片、资源等如果未标明原创,均为收集自互联网公开资源;分享的图片、资源、视频等,出镜模特均为成年女性正常写真内容,版权归原作者所有,仅作为个人学习、研究以及欣赏!如有涉及下载请24小时内删除;
3、如果您发现本站上有侵犯您的权益的作品,请与我们取得联系,我们会及时修改、删除并致以最深的歉意。邮箱: i-hu#(#换@)foxmail.com