我会尽量保持清晰。
我要使用以下内容添加页脚和导航栏:
<?php include 'includes/nav.php';?>
<?php include 'includes/footer.php';?>
导航栏上有一个语言按钮,如下所示:
<ul class="language">
<li class="en"><a href="...."></a></li>
</ul>
我的网站语言是英语。但是我在文件夹 / de / 中有它的德语副本。
问题/问题:
进行动态更改语言。
或者换句话说,当我进入 www.website.com/contact 页面并点击<a href="...."></a>
进入 www.website.com/de/联系人页面。
我接受任何类型的解决方案。不管它是.htaccess中的mod_rewrite,nav.php中包含的简单php规则还是某种javascript代码。
如果解释不够清楚,请在下面键入一个问题,我会立即回复更详细的信息。
答案 0 :(得分:0)
在nav.php中,您可以使用$ _SERVER [“ REQUEST_URI”]来获取当前URL的路径。
然后,如果您位于www.website.com/contact,则$ _SERVER [“ REQUEST_URI”]为 / contact ,如果您位于www.website.com/de/contact,然后是 / de /联系人。
您可以对其进行评估,以确定您是否在/ de /下。这里是示例代码:
$prefix = "";
$uri = $_SERVER['REQUEST_URI'];
if ( substr($uri,0, 4) == "/de/" ) {
$prefix = '/de';
}
网址应为
<ul class="language">
<li class="en"><a href="<?php echo $prefix ?>/contact"></a></li>
</ul>
如果您位于根目录(不是/ de /)中,则$ prefix变量为空,并且不会显示在url中。