覆盖WordPress MultiSite的数据库配置

时间:2010-09-29 作者:Michael Lindfors

我们的团队在使用WordPress 3 multisite时遇到了一个问题。我们通常使用站点的本地副本(localhost/testsite),但使用相同的数据库来保持所有更改都是最新的。

这在一次安装中就可以很好地工作,因为您可以使用以下内容覆盖PHP中的数据库配置:

define( \'URL\', $path );  
define( \'WP_HOME\', $path );  
define( \'WP_SITEURL\', $path );  
define( \'WP_CONTENT_URL\', $path . \'/wp-content\' );  
但这在多站点上不起作用,因为有额外的表(wp_blogs, wp_site) 他们在自己的设置中有博客的路径。

有人知道如何覆盖这些设置吗?我希望该网站在域上运行localhost 对于我们的开发人员,developerdomain.com 对于我们的测试服务器realdomain.com 当网站上线时。

如果我们必须为每个数据库设置不同的数据库,手动更改域和路径,然后在数据库之间复制帖子、博客和用户数据以进行调试并继续开发,这感觉有点过头了。。。

2 个回复
SO网友:doublesharp

刚刚想出了一个解决这个问题的方法https://stackoverflow.com/questions/12958123/override-wp-siteurl-and-wp-home-for-wordpress-multisite/

基本上,您不会复制wp_sitewp_blogs 在拉入生产数据库时安装开发表,并在本地为开发URL预先配置了这些表。然后利用网络范围的插件设置WP_SITEURLWP_HOME 值基于wp config中的配置。php。

一旦我有时间进一步测试它,它可能会变成一个插件。

希望有帮助!

SO网友:Matthew Boynes

这个问题在WordPress的最新版本中已得到纠正。然而,最简单的解决方案是使服务器上的文件路径匹配,例如,将所有源文件放在每台服务器的/var/www/中。简单明了:-)

结束

相关推荐

NGINX Multisite Rewrite rules

我对我的新NGINX 安装如果我像下面这样手动访问图像:incredible.devpreview.co/wp-content/blogs.dir/2/files/2011/05/stockvault-colorful-illustration108811.jpg它出现了,但WordPress正在这里寻找它:incredible.devpreview.co/files/2011/05/stockvault-colorful-illustration108811.jpg以下是我的NGINX配置文件中的内容: