我尝试用不同的语言设计一个web。
如何制作提供干净url的链接有些页面是动态的,所以我不知道网址,我正在寻找一种方法,使链接在任何页面中都能工作。
我知道我可以做到这一点,因为它适用于任何页面:
<a href='?lang=en'>en</a>
<a href='?lang=fr'>fr</a>
但是,如何做到这一点,并能够像这样获得干净的url?:
myDomain/someFolder/file.php // the default in English
myDomain/fr/someFolder/file.php // fr for French
(注意,这不仅仅是将fr改为en。在英语中没有/en/)
我发现我在htaccess中使用了重写规则,将myDomain/someFolder/file.php更改为myDomain/Folder/file.php?lang=en但这不是重点,我的问题不同,我问:如果我不知道url,如何在html中创建干净的链接?
我会做什么,它没有.htaccess重写工具那么花哨。。。
首先,我会做一些事情来获取当前的页面名称。这可以简单到:
$pagename = "contactme.html";
现在,我有一系列可用的语言:
$languages = array('en'=>'English','fr'=>'French','es'=>'Spanish');
有了这个,我可以在每一页的顶部打上这个:
Select your language: <?php
foreach($languages as $ln=>$language)
print " <a href='mysite.com/$ln/$pagename'>$ln</a> ";
这会吐出一个缩写列表。它们可以是小旗吗(很多人都喜欢)。当然将锚点中的$ln
更改为<img src='$ln.png' border='0'>
,并确保您拥有所有图像。它们可以在带有选择列表的表单中吗?当然制作一个选择列表。将"onchange"触发器添加到表单以重新加载到正确的URL。他们会是一个超级花哨的旋转闪光动画吗?是的——如果你真的想做那么愚蠢的事。