什么是 WordPress 多站点?
在其核心中,WordPress 提供了一个名为 ‘多站点’ 的功能,该功能的起源可以追溯到 2010 年 WordPress 3.0 的发布。从那时起,它经历了多次修订,旨在引入新功能并加强安全性。
本质上,WordPress 多站点可以理解为:一所大学维护单一的 WordPress 安装,但每个院系维护自己的 WordPress 站点。
WordPress 多站点到底是什么?
多站点是 WordPress 的一项 功能,允许多个站点共享单一的 WordPress 安装。当多站点被激活时,原始的 WordPress 站点会转换为支持通常所称的 站点网络。
该网络共享文件系统(意味着 插件和主题也被共享),数据库,WordPress 核心文件,wp-config.php 等。
这意味着 WordPress、主题和插件的更新只需在网络中的所有站点执行一次,因为它们共享相同的文件系统文件。
这一点是多站点的主要优势之一,因为它允许你在管理的站点数量增长的同时,保持维护客户站点所需执行的任务数量不变。
子域名还是子目录?
运行 WordPress 多站点有两种模式——在将常规 WordPress 安装转换为多站点安装时,你需要选择其中一种:
子域名: ex.: site.domain.com
…or
子目录: ex.: yourdomain.com/site
每种模式都有优缺点,你在做出决定时需要考虑这些因素。
但需要注意的是,一旦你做出决定,将网络从子目录切换到子域名或相反的操作非常困难——尤其是当你已经创建了一些站点时。
在做出决定之前,以下几点值得注意:
子目录模式 在设置和维护方面最简单。这是因为所有站点只是附加到主域名的路径(例如 yourdomain.com/subsite)。因此,你只需要主域名的 一个 SSL 证书,它将覆盖整个网络。
与此同时,由于其 URL 结构,Google 和大多数其他搜索引擎会将你基于子目录的网络中的所有子站点视为一个巨大的站点。因此,终端客户添加到子站点的内容可能会影响你登陆站点的 SEO 表现,例如。影响程度有争议,也有人认为这种安排甚至可能对 SEO 表现有益。
子域名模式 设置稍微复杂一些,但其 URL 结构(例如 subsite.yournetwork.com)通常被认为更“专业”。
设置子域名模式的主要挑战之一是为整个网络提供 SSL(HTTPS)覆盖。原因在于浏览器将子域名视为独立实体。因此,你需要为网络中的每个子域名使用不同的 SSL 证书,或者使用一种特殊的证书,称为 通配符 SSL 证书。近年来,托管服务商和面板在 SSL 配置方面提升了水平,一些提供了点击按钮即可获取通配符证书的功能,缩小了两种模式在设置复杂性方面的差距。
与子目录模式相反,基于子域名的网络中的子站点被搜索引擎视为独立的网站,这意味着一个子站点上的内容不会干扰其他子站点的 SEO 表现。
超级管理员
单站点 WordPress 安装允许你添加无限数量的用户,并为这些用户分配不同的角色和权限。
在 WordPress 多站点中,解锁了一种新的用户类型:超级管理员——以及一个新的管理面板:网络管理员面板。
正如其名称所示,超级管理员拥有对网络的超级权限,能够管理其所有子站点、插件、主题,等等!
一旦你将单站点 WordPress 安装转换为多站点,原单站点的管理员将自动升级为超级管理员。
插件和主题只能由超级管理员在网络管理员面板中安装或卸载。子站点管理员随后可以选择激活或停用这些插件或主题,除非超级管理员在网络层面激活了某个插件,这将强制其始终对所有子站点激活。
注:正如你所见,邀请某人加入你的网络并授予他们超级管理员身份会让该用户对你的网络拥有完全控制权。例如,其他超级管理员甚至可以移除你的超级管理员身份,从而有效地将你锁定在自己的网络管理员面板之外。为了让 Ultimate Multisite 客户能够细粒度控制额外超级管理员的权限,我们提供了一个名为 Support Agents 的插件。该插件允许你创建另一种用户——代理——仅拥有他们在网络上执行任务所需的权限。
尽管用户表是共享的,用户仍可由子站点管理员或超级管理员添加到子站点或从子站点移除,并且他们甚至可以在不同子站点拥有不同的用户角色。
性能考虑
WordPress 多站点在可支持站点数量方面非常强大。可以通过 WordPress.com、Edublogs 和 Campuspress 这类基于多站点的服务来验证,它们每个都托管数千个站点。
理论上,在单个 WordPress 多站点安装上没有最大站点数限制,但实际上,你可以顺利运行的站点数量会因多种因素而大不相同:站点的动态程度、子站点可用的插件等。
经验法则是,网络越简单越好。优先选择内容不太动态的站点(这使它们成为激进缓存策略的理想候选者),并尽量保持插件堆栈轻量化(活跃插件越少越好),可以显著提升你可托管的子站点数量。
最好的部分是,由于这里全部是 WordPress,你已经熟悉并喜爱的性能提升工具同样适用于多站点网络。
多站点的主要瓶颈是数据库,但如果其他方面设置正确,可能需要数千个站点才会出现问题。即便如此,也有可逐步添加的解决方案(例如数据库分片方案)。