使用单个WordPress安装的多个域

时间:2017-02-23 作者:cchiera

假设您有4个示例域:1。教条。com 2。教条。cn3。DogsRulecatsTool。co.uk4。教条。澳大利亚

目前,每一个都是在同一台服务器上托管的自己的WordPress站点。每个页面只有2页,主页包括一个表单和一个感谢页面。

由于它们是如此小的站点,并且托管在同一台服务器上,因此希望在可能的情况下进行整合。一种选择是进行wordpress多站点设置,这可能会有所帮助?这是这种情况下的最佳选择还是。。。

我们可以为所有4个域分别指向的每个站点安装一个普通的WordPress和自定义页面吗?

2 个回复
最合适的回答,由SO网友:Fayaz 整理而成

为什么不多站点:与单站点安装相比,多站点安装很难维护。

许多有用的插件在多站点安装上不能正常工作。

对于这样一个基本上只有一个页面(感谢页面不算在内)的简短网站,从名称上看可能存在SEO问题。Multisite无法解决此可能的问题。

我假设他们从您的示例域名中有类似的内容,但是,如果这四个站点的内容非常不同,那么从SEO的角度来看,拥有多站点安装的独立站点可能会更好。

为什么不单站点:如果您以前没有这样做过,那么在单站点安装中管理多种语言可能并不容易正如@Mark在评论中所建议的,如果这些站点中有不同的语言内容(同样只是基于示例域名的假设),那么将它们合并到单个站点可能并不容易。我们鼓励您使用插件,如Polylang 管理多种语言。有成千上万的多语言网站在WordPress上运行得非常好。然而,如果结果证明很困难,那么您可以考虑设置多站点,甚至保持原样。

让他们保持原样

如果以下条件为真,则最好保持原样:

管理这些多个独立的安装对您来说并不太困难。

您可能有在多站点安装中未经良好测试的插件。

您在不同的网站上有多语言内容,并且没有WordPress多语言设置的经验。

如果您决定进行单站点安装,或者至少要对其进行测试,则可以按照以下步骤进行:

保留任何一个站点(例如dogsrule.com) 作为主要站点。

然后让其他三个站点指向主站点的web根目录。

主站点的主页保持原样(&L);然后再为其他三个站点创建三个页面(例如:dogsrule.com/cn, dogsrule.com/dogs-rule-cats-drooldogsrule.com/au).

然后,您可以使用服务器重写规则将其他三个域重定向到主站点的相应页面。

例如,如果您的web服务器是Apache,那么在您的主站点.htaccess 文件您可以使用以下代码(根据以上页面):

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

# redirect rules for the other three domains
RewriteCond %{HTTP_HOST} ^dogsrule\\.cn$
RewriteRule .            http://dogsrule.com/cn [R=301,L]
RewriteCond %{HTTP_HOST} ^dogsrulecatsdrool\\.co\\.uk$
RewriteRule .            http://dogsrule.com/dogs-rule-cats-drool [R=301,L]
RewriteCond %{HTTP_HOST} ^dogsrule\\.au$
RewriteRule .            http://dogsrule.com/au [R=301,L]

RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
之后,您将只有一个站点,其中包含四个主页(包括主页)和四个感谢页面,您的其他域将正确重定向到相应的页面。

Note:设置完上述内容后,您可以删除其他三个站点,but don\'t delete the domains. 尽管如此,实际上在此之后您将只有一个站点,但是,如果您删除这些域,旧书签和反向链接将无法工作。

SO网友:Pat J

您可以使用WordPress Multisite 4.5或更高版本将域映射到站点:WordPress Multisite Domain Mapping. 这是本机支持的,无需插件。

相关推荐

Remove node from multisites?

我有一个如下所示的功能,其目标是从“我的网站”下拉列表中删除新帖子并管理评论。如果我将{$node\\u id}替换为blogs id,这会很好地工作。但我希望这适用于“我的站点”列表中的所有多站点。这意味着我需要获得所有的博客id。这是我已经取得的成就,但它不起作用。add_action( \'admin_bar_menu\', \'remove_nodes_from_mysites\', 999 ); function remove_nodes_from_mysites( $wp_admin_