一个 WordPress 安装,多个博客

这几天正好想装WPMU,看到了水煮鱼的这篇文章,看来省了装WPMU了。

你是否有多个博客,每个博客都是使用多个 WordPress 博客?那么你是否厌烦了重复多次的升级,重复多次的安装插件?如果是的,你是否尝试过一个 WordPress 安装,就能给多个博客使用呢?下面我就能讲讲我如何实现一个 WordPress 安装实现多个博客共同使用。

第一步,肯定是把所有的域名都指定到相同的 WordPress 安装目录下。这样才能使得所有博客使用同一个 WordPress 安装。

第二步要分两种情况:

第一种是使用不同的数据库。只需要在 wp-config.php 文件的开头加入以下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
$hostname = $_SERVER['HTTP_HOST'];
 
switch ($hostname) {
case "fairyfish.com":
    $db = "db1";
    break;
case "denis.fairyfish.com":
    $db = "db2";
    break;
}
 
// ** MySQL settings ** //
define('DB_NAME', $db);    // The name of the database

代码很简单就是根据不同的域名,给DB_NAM不同的数据库名的值。这里是假定你使用相同的数据库用户名,如果你的数据库用户名,也可以在每个 case 语句中指定。

第二种情况是使用相同的数据库,这个时候我们可以使用不同 table_prefix 来搞定。方法基本和上面相同。我也不再重复代码。对于这种情况,已经有一款插件他能帮助你完成所有的了工作,WP-Hive,这款插件除了能够给你不同的博客指定一个不同的table_prefix之外,还能够通过 rewriter 实现每个博客都能有自己的 favicon,sitemap.xml 和 robots.txt。

最后让所有的博客使用相同的用户。这个功能只能适合 WordPress 2.6 之后的版本。实现方法是在wp-config.php文件中指定 CUSTOM_USER_TABLECUSTOM_USER_META_TABLE 这两个值为常量,使得所有的博客都是用同一个 USERUSERMETA 表,从而达到所有博客拥有相同的用户。

原文链接:一个 WordPress 安装,多个博客