php - Codeigniter 使 URL SEO 友好

标签 php codeigniter url routes seo

我当前的 URL 是这样的:

www.hostname.com/get_city/

(此 url 已使用路由缩短) 这里 get_city 是我的方法名称,现在我真正想要的是...

1)从 url 中删除 Controller 名称

2)从下拉列表中传递选定的城市值并在 URL 中设置为参数

因此,所需的 url 是:www.hostname.com/californiawww.hostname.com/newjersey

注意:我知道如何使用路由,但在这种情况下如何制作动态 URL?! 并且请不要给我直接引用 ellislab 文档,因为我已经尝试过这些东西

最佳答案

对于 codeigniter 中的动态路由:

像这样尝试:

在你的 routes.php 文件中复制并粘贴这些代码:

require_once (BASEPATH . 'database/DB' . EXT);
require_once (BASEPATH . 'helpers/url_helper' . EXT);
require_once (BASEPATH . 'helpers/text_helper' . EXT);
$db = &DB();

$query = $db -> get('news');
$result = $query -> result(); //result return all records
foreach ($result as $row) {
    $string = rawurlencode(str_replace(' ', '-', strtolower($row -> subject)));
    $route[$string] = "controller/news_details/$row->id";
}

因此您可以将 $string 更改为您想要的任何字符串。

然后尝试输入新的 url 并查看路由是否正常。

注意:.htaccess 文件必须删除 url 中的 index.php

希望这对您有所帮助。

关于php - Codeigniter 使 URL SEO 友好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35173719/

相关文章:

mysql - 如何在codeigniter mysql中合并两个相同的行并显示不同的id行

mysql - 如何在 codeigniter 中运行自定义更新查询

url - 警报说使用不带绝对URL的已弃用HREF

php - 无法用 "templating"替换别名 "fos_rest.templating"

php - 发布前编辑提交的表单数据的问题

php - 从数据库 CodeIgniter 获取数据时出错

python - 如何在 Python 中获取文件的内容类型? (带网址..)

php - 为什么我的 PHP/SQL 会生成重复的数据库条目?

php - 更改 Wordpress 中的子菜单换行

selenium - 如何使用 Selenium WebDriver 等待重定向链在最终页面加载不可预测的情况下解决?