wordpress 多站点管理


在配置wp-config.php文件中开启多站点功能:

在/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */的上边添加

define('WP_ALLOW_MULTISITE', true);


 在工具中选择站点配置或目录配置,会生成配置文件,按要求进行填写(我选的域名配置):

define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', true );
define( 'DOMAIN_CURRENT_SITE', 'hair.domain.com' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
define( 'COOKIE_DOMAIN', '' );


如果选择的是目录配置,需按要求进行web静态规则进行填写,nginx静态配置(apache和nginx可以用工具进行转换);

#ignored: "-" thing used or unknown variable in regex/rew 
	rewrite ^/wp-admin$ /wp-admin/ permanent;
#ignored: "-" thing used or unknown variable in regex/rew 
	rewrite ^/(wp-(content|admin|includes).*) /$1 last;
	rewrite ^/(.*.php)$ /$1 last;
	rewrite /. /index.php last;


在wp-config.php中配置限制站点访问,加在web_debug下面;

define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);


$domain = array("a.domain.com", "b.domain.com", "c.domain.com");
if(in_array($_SERVER['HTTP_HOST'], $domain)){
    define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);
    define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
}

define( 'WP_CONTENT_URL', '/wp-content');