多个域,不同的语言,页面的相同URL

时间:2013-12-07 22:01:59

标签: php wordpress multilingual multiple-domains

我正在创建一个包含3个域和1个子域的多语言网站。我正在使用Wordpress,我想使用单独的WP安装而不是多站点。

域名将是:

  • example.de in german
  • en.example.de(英文/国际版的子域名)
  • example.rs in serbian and
  • example.ro in romanian

因此,每个域都用于其他国家/地区。有些页面使用不同的语言是相同的,有些是特定的内容。

现在我的问题是:我需要有一些标志来改变语言(如果需要的话还有域名)。因此,如果您在塞尔维亚语(example.rs/about-us)中关于我们页面并点击德国国旗,您将被带到example.de/about-us/。我不想也不能手动链接域之间的页面,我希望避免使用WMPL,因为它不是免费的,而且我国还有一些paypal技术问题。

我找到了类似问题Changing WordPress link in header的答案,我想使用答案中的脚本来重写网址。由于链接在标题中,我需要动态的东西,所以我可以为每个页面都有相同的标题。所以如果我在example.rs/about-us上重写链接为example.de/about-us,那就是德国国旗按钮等。

我担心的是SEO和用户混淆。我知道谷歌会知道它是针对不同的位置,因为它是一个不同的顶级域名和语言,所以重复的内容不会是一个问题。但是所有网址都是英文的(所有域名都是相同的,例如关于我们,potfolio,联系人),页面语言也不会。所以德语页面会有一个用英文写的网址。这是一个大问题吗?此外,是否有替代解决方案的问题所以我可以链接页面与语言相关的URL(编码或插件)?

2 个答案:

答案 0 :(得分:2)

您对用户混淆的担忧已经确定。我只是在阅读你的问题时感到困惑。我不想让这个网站的管理员感到困惑。 : - )

我会重新考虑基础知识或安装蓝图。

使用优秀的qtranslate插件,您可以通过更加用户友好且管理员友好的方式轻松获得相同的结果。

这将允许您拥有以下域名:

  • de.example.com
  • en.example.com
  • ro.example.com

或者,如果你想:

  • www.example.com/de
  • www.example.com/en
  • www.example.com/ro

它还可以让您轻松拥有不同的内容,标题,以及优秀的钩子和过滤系统 - 以及一些自定义编码 - 甚至是不同的URL和基于语言的SEO。全部在同一个安装中。

即使你想要的小旗子也是开箱即用的。

Qtranslate也有相当活跃的社区,forum用于黑客攻击。

如果您将使用它,您可以执行类似

的操作
$ccTLD = end(explode('.', $_SERVER['HTTP_HOST']));
   if ($ccTLD == 'com')
define('WPLANG', 'en_US');
   else
define('WPLANG', 'ru_RU'); //or other language

(在这里查看更多details - BTW - 恕我直言,不需要黑客攻击,可以使用过滤器)

但正如我之前所说,如果你正确安排安装,你就不会真的需要它。

您还可以选择使用域映射插件将域正确映射到相应的部分(或者更好 - 在cPanel / Plask中手动执行)

恕我直言 - 多个安装对于这样的网站来说是一个悲伤的选择(除非它也会使用不同的插件,不同的主题,不同的一切......)

qtranslate一个机会 - 我几乎肯定在您学习并尝试之后 - 您将重新考虑您的安装框架。

答案 1 :(得分:0)

如果您想要链接到其他域上的“相同”页面,请尝试以下操作:

<a href="<?php echo 'http://example.rs' . $_SERVER['REQUEST_URI']  ?> "  >

所以,如果您在页面上示例example.ro/about-us,此代码将生成example.rs/about-us

的链接