我正在尝试翻译我的网址,具体取决于用户选择的语言,例如:
www.example.com/en/discover或
www.example.com/fr/decouvrir
显然我希望这两个URL指向同一页面(PHP用字典处理翻译)。我想知道在htaccess文件中是否有一种聪明的方法可以做到这一点"自动"没有为所有页面编写规则?目前我会这样做
RewriteRule ^ en / discover $ discover.php?lang = en [NC,L]
RewriteRule ^ fr / decouvrir $ discover.php?lang = fr [NC,L]
但是如果有很多页面并且我想添加另一种语言,这个解决方案并不是最简单的。
非常感谢你的帮助
答案 0 :(得分:0)
你应该将所有参数传递给单个php文件(调度程序),whitch会翻译路由然后包含所需的文件。类似的东西:
的.htaccess
RewriteRule ^(.*)/(.*)$ index.php?lang=$1&include=$2 [NC,L]
PHP
// This is really bad code, just an example
$dictionary = array(
'en' => array(
'discover' => 'discover'
),
'fr' => array(
'decouvrir' => 'discover'
)
);
echo $dictionary[$_GET['lang']][$_GET['include']];