[英]Codeigniter loading different controllers for mobile
我正在寻找解决方案,如何在不更改移动设备网站uri的情况下加载不同的控制器。 例如,我要通过PC转到www.site.com,我应该看到网页(默认情况下可以正常运行,一切正常)。 但是现在我要通过手机访问www.site.com,我希望看到该网站的移动版本不会更改url。 因此,当我通过移动设备访问www.site.com/article-123时,我想查看页面的移动版本。 我正在寻找解决方案,但没有发现任何东西。 我试图将user_agent库加载到我的路由文件中,但是没有任何反应(希望更改对移动设备控制器的调用)。 有什么解决办法吗?
引用OP :
“我试图将user_agent库加载到我的路由文件中,但是什么也没发生。”
由于您从未展示过我们,因此您不知道如何向routes
添加库,但请参阅文档以了解user_agent
库的正确用法。 然后使用url
帮助redirect
到另一个Controller函数。
$this->load->library('user_agent');
$this->load->helper('url');
if ($this->agent->is_mobile())
{
redirect('/mobile/home/', 'refresh'); // go to 'mobile' controller, 'home()' function
}
else
{
redirect('/desktop/index/', 'refresh'); // go to 'desktop' controller, 'index()' function
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.