您是否有类似的问题,例如两个Wordpress网站如何在同一个数据库上使用不同的主题,或者如何运行两个主题不同且具有单个数据库和相同内容的WordPress博客
假设您有一个网站 “ jikesn.com ”, 并且想要为其移动用户启动一个具有相同内容的子域,即 “ m.jikesn.com”, 但是根据您的要求具有不同的主题和插件。
这是最流行的问题之一,很难在Internet上找到正确的解决方案和实现。在本文中,我将告诉您正确实施的所有步骤。
请按照以下步骤操作:
- 首先在您要使用与主网站相同的内容的地方创建一个子域/域。
- 现在,将所有wordpress文件复制 到子域Root。
- 编辑wp-config.php,并将两个网站文件修改为:
在网站1中:
define('WP_HOME','http://A.mysite.com');
define('WP_SITEURL','http://A.mysite.com');
在网站2中:
define('WP_HOME','http://B.mysite.com');
define('WP_SITEURL','http://B.mysite.com');
- 现在,我们必须 在phpmyadmin中添加一个数据库表,即 wp_options2,以便我们可以在两个网站上独立添加不同的主题和插件。要导入 wp_options2, 只需导出wp_options表,在任何文本编辑器(如sublime Text)中编辑它,然后将所有wp_options替换 为 wp_options2 。 最后,将该表导入phpmyadmin中,您会看到 将创建一个包含所有字段的 wp_option2表。让SITEURL和主页在 wp_options2 为“ / “。
- 在第二个网站中,找到wp-config.php,然后在if(!defined(’ABSPATH’))之前添加以下代码:
define( 'M7_OPTIONS_TABLE', 'wp_options2');
- 在第二个网站中,找到到
wp-includes/wp-db.php
的第1049行,并添加代码:
if (isset( $tables['options'] ) && defined('M7_OPTIONS_TABLE')) {
$tables['options'] = M7_OPTIONS_TABLE;
}
- 这些代码应在公共功能表函数之前添加
if (isset( $tables['users']) && defined('CUSTOM_USER_TABLE')))
就是这样,现在您可以独立登录和添加主题插件了。两个站点将共享相同的帖子,页面。
2020.11.18补充:wordpress更新后需要从新设置wp-includes/wp-db.php
文件。
感谢您阅读本文。你喜欢这篇文章吗?在下面的评论中分享您的想法!