我正在使用codeigniter我在视图中创建了下拉列表,如
<?php echo form_open('trip/result', array('method' => 'get')); ?>
<div class="row-fluid">
<div class="main-form">
<select name="look_for" class="span4">
<option selected="selected" value="0"> choose country </option>
<option value="US">USA</option>
<option value="EN">England</option>
<option value="FR">France</option>
</select>
我希望国家的全名出现在网址中,我有很多国家/地区所以我在数据库中有类似的表(EN-US-FR),所以我想发送每个国家/地区的全名和符号以显示在URL中使SEO对网站有利。
答案 0 :(得分:1)
您正在寻找友好的网址!网上有很多关于它们的文章。如果您使用Apache Web Server,只需谷歌friendly url apache
即可!我已经为你做了!示例:Friendly url using php and htaccess或Use Apache's mod_rewrite to make URLs more user friendly。
在您的情况下,您应该将option
字段的值更改为国家/地区的长名称,但不要忘记过滤“特殊”字符,例如空格或引号!实际上,您应该在数据库的countries表中创建另一列,其中包含每个国家/地区的“slug”。因此,“英国”将成为“联合王国”。有一些功能可以做到这一点,like this one!
如果您使用的是Apache,则.htaccess
可能如下所示:
RewriteEngine on
RewriteRule ^countries/([a-zA-Z]+)$ ./countries.php?country=$1 [L]
然后,在您的countries.php
文件中,您将在数据库中搜索匹配的国家/地区!