WordPress多站点网络管理
创建多站点网络后,由于多站点增加了复杂性,还需要了解一些高级管理知识。即使熟悉WordPress,最初接触网络管理的结构和行为时,也可能感到困惑。
用户访问与权限
用户存储在共享的数据库表中,但必须先被分配到某个站点并拥有角色,才能访问该站点。
在WordPress网络中,站点管理员的权限有所缩减:他们不能安装新主题或插件,也不能编辑站点用户的个人资料。只有网络管理员,也称超级管理员,能够执行这些操作。
子目录安装中的固定链接
固定链接仍可正常工作,但主站点,也就是首先创建的站点,会多出一个blog路径段,例如:
domain.com/blog/YYYY/MM/POSTNAME
这是有意设计的,用于避免与子目录站点冲突。目前没有简单的修改方法,因为修改会妨碍WordPress自动检测主站与子站的路径冲突。
静态页面不使用blog前缀,而是直接位于根地址下,例如domain.com/PAGENAME。如果在第一个站点创建与网络中已有站点同名的静态页面,该页面的固定链接会增加后缀,例如domain.com/PAGENAME-2。如果创建的新站点使用了某个现有静态页面的别名,则该静态页面将无法访问。可以把静态页面名称加入禁止列表,防止创建同名站点。
上传文件路径
全新安装中的第一个站点仍把文件上传到传统位置/wp-content/uploads/。网络中后续站点则使用/wp-content/uploads/sites/下按数据库站点编号划分的子目录。文件可通过相应URL访问。
插件
插件在网络中的使用方式更加灵活。插件从网络管理后台的插件页面安装,然后可以按站点启用,或在整个网络启用。在插件文件头加入Network: true,可将插件指定为仅限网络使用。
- 站点启用的插件:仅在启用了它的站点加载。
- 网络启用的插件:网络管理员可以在网络插件后台启用,使其对全部站点生效。单站点插件列表会显示“Network Active”。某些插件只有在网络启用后才能在多站点环境正常工作。
- 必须使用的插件:供全网使用的插件也可作为单文件放在
mu-plugins目录中,或通过该目录中的文件载入子目录。WordPress不会自动读取子目录中的文件。这类插件无须启用或停用,只要存在就会使用,并且不会出现在单站点插件列表中。
插件目录中的插件并非全部支持多站点。请查看插件介绍页或咨询开发者,确认具体插件是否兼容。
如果希望单站点管理员可以启用或停用本站插件,需要在网络管理员的“设置 → 网络设置 → 菜单设置”中,为他们启用插件页面。网络管理员始终可以访问每个站点的插件。单站点管理员可以启停未在网络中启用的插件,但网络启用的插件只显示“Network Active”,不提供停用或设置选项。
也有插件可以帮助批量启用或停用各站点的插件。
主题
所有主题都面向整个网络安装。修改某个主题的代码,会影响所有使用该主题的站点。
在站点编辑器中进行的样式修改只影响当前站点。使用经典主题时,单站点可以通过自定义器添加额外CSS或修改其他样式;这些设置仅存储在该站点的数据库表中。
“网络启用”主题并不会自动把它设为各站点的当前主题,只是使各站点能够选用。要让某个主题出现在单站点后台,必须在网络中启用,或在“网络管理 → 编辑站点 → 主题”标签中允许该站点使用。主题已经在某个站点启用后,即使在网络层面停用,也不会影响该站点继续使用它。
默认情况下,WordPress会把最新的“Twenty …”主题分配给新站点。可以在wp-config.php中添加以下设置,将classic替换为目标主题目录名:
define('WP_DEFAULT_THEME', 'classic');
站点之间共享内容
网络中的各站点相互独立,默认不共享内容。可以把网络理解为一个小型WordPress.com。有一些插件可以帮助站点之间共享内容。
切换网络类型
在子域名与子目录配置之间切换现有网络,是一项高级操作。仅修改SUBDOMAIN_INSTALL和重写规则,不会迁移现有站点地址,也不会配置DNS、虚拟主机、TLS证书、重定向和Cookie。应先备份网络,并在预发布环境测试。
需要在wp-config.php中设置SUBDOMAIN_INSTALL。子域名网络使用:
define( 'SUBDOMAIN_INSTALL', true );
子目录网络使用:
define( 'SUBDOMAIN_INSTALL', false );
还必须更新已存储的站点地址,并按新的网络类型配置Web服务器,参见下节的URL重写说明。
创建网络时,如果主站已有发布超过一个月的内容,WordPress通常要求使用子域名配置,以降低已有页面路径与新站点路径冲突的风险。
根据设置要求,子域名网络不能以IP地址或localhost作为服务器地址。
URL重写
多站点需要URL重写,将请求路由到网络中的相应站点。具体配置取决于Web服务器。WordPress能生成Apache和IIS规则,但不能生成Nginx配置。
请按Web服务器选择适当规则;原文URL重写章节提供Apache HTTP Server与Nginx多站点规则的链接。
域名映射
WordPress 4.5之前,需要域名映射插件。从4.5起,域名映射成为多站点原生功能。详见官方的WordPress Multisite Domain Mapping说明,可从原文对应章节进入。
迁移多站点
迁移多站点比迁移单站点更复杂。在继续之前,请阅读原文所链接的Moving WordPress Multisite。
导入网络
创建好用于导入其他站点的WordPress网络后,请参阅原文所链接的Migrating Multiple Blogs into WordPress Multisite。
来源与版权
原文:Multisite Network Administration,WordPress高级管理手册。首次发布于2023年3月28日,更新于2026年9月24日。中文译文。版权归原作者及文档贡献者;WordPress®商标属于WordPress Foundation。











暂无评论内容