Php 在同一数据库上使用不同主题的两个wordpress站点
我想从同一个数据库运行两个wordpress站点,一个.site.com和两个.site.com。除了主题外,一切都是一样的Php 在同一数据库上使用不同主题的两个wordpress站点,php,wordpress,Php,Wordpress,我想从同一个数据库运行两个wordpress站点,一个.site.com和两个.site.com。除了主题外,一切都是一样的 one.site.com-现有网站 two.site.com-应使用one.site.com的数据库,但 主题 有什么办法可以做到这一点吗 由于主题详细信息存储在wp_options表中,two.site.com是否可以使用它来显示不同的主题?比如说复制那张表,让two.site.com使用它 谢谢你的帮助 编辑: 这两个站点都没有任何插件。您可以从一个数据库运行两个
- one.site.com-现有网站
- two.site.com-应使用one.site.com的数据库,但 主题
wp_options
表中,two.site.com是否可以使用它来显示不同的主题?比如说复制那张表,让two.site.com使用它
谢谢你的帮助
编辑:
这两个站点都没有任何插件。您可以从一个数据库运行两个站点,但不能从同一组数据库表运行,因为存储的数据包括站点的域名 选项表中有两个值:siteurl和home。使用相同的选项表将不起作用,即使您为每次php运行强制更新选项 因此,您需要使用两个数据库 编辑:
我的建议是复制base并在不同的数据库上运行这两个站点。这可能通过使用通配符子域()来实现 这可能有点麻烦,但您必须测试子域的条件(可能在wp config.php?)并在数据库()中设置主题
我看到的唯一问题是,your functions.php可以更改WP功能,因此,使用两个子主题的父主题可能是个好主意() 在单个数据库上安装2个WordPress站点 在数据库中创建新表。调用它
wp\u options 2
并将wp\u options中的所有内容复制到此新表中
在第二次安装中,转到wp-config.php,在if(!defined('ABSPATH'))
adddefine('M7_OPTIONS_TABLE','wp_options2')之前代码>
在第二次安装中,转到第1009行的wp includes/wp-db.php并添加代码:
if (isset( $tables['options'] ) && defined('M7_OPTIONS_TABLE')) $tables['options'] = M7_OPTIONS_TABLE;
这些代码应添加到公共功能表
功能中,在if(isset($tables['users'))和&defined('CUSTOM_USER_TABLE'))之前
我在这里找到了这个解决方案
由于我们使用相同的数据库,链接将在两个网站上相同。我有很多图片链接,我删除他们使用
.single a[href$=".jpg"] {
pointer-events: none;
cursor: default;
}
副本
有人可能会说,使用功能并向主题添加两个有文档记录的API调用可能是一个比手动修改数据库模式和修改WP访问模式更干净的解决方案。数据库还包含有关活动插件、主题和选项的信息。正如您提到的,需要两个数据库。两个不同的数据库是否可以自动同步某些表?是否包含站点域名并不重要(比如图像url等)。我只是需要一个不同的主题,我不建议你这么做。将它们视为两个独立的项目。您可以使用pre\u选项\u样式表
过滤器(在插件中)并根据URL更改主题?(pre_option_*筛选器允许您动态筛选从wp_options表返回的结果。)