Php CodeIgniter:如何在多语言网站中更改URL名称
我有一个关于使用CodeIgniter开发的网站URL的问题,该网站提供两种不同语言的内容:en和de 我想为这两种语言创建SEO友好的URL 我的问题: 如何更改以下URL www.mysite.com/en/landscape 在 www.myiste.com/de/landschaftPhp CodeIgniter:如何在多语言网站中更改URL名称,php,codeigniter,Php,Codeigniter,我有一个关于使用CodeIgniter开发的网站URL的问题,该网站提供两种不同语言的内容:en和de 我想为这两种语言创建SEO友好的URL 我的问题: 如何更改以下URL www.mysite.com/en/landscape 在 www.myiste.com/de/landschaft 对于德语?使用具有以下类扩展的codeigniter语言库:。我也使用这个控制器来切换语言 class LangSwitch extends CI_Controller { public function
对于德语?使用具有以下类扩展的codeigniter语言库:。我也使用这个控制器来切换语言
class LangSwitch extends CI_Controller {
public function __construct() {
parent::__construct();
}
public function switchLanguage($language = "") {
$this->load->library('user_agent');
$referrer = $this->agent->referrer();
$l = substr($referrer, strlen(base_url()));
if(isset($referrer)){
preg_match('/\/(.+)$/i',$l,$match);
$redirect_url;
if (empty($match)) {
redirect(base_url().$language ,'refresh');
}
else{
$redirect_url = base_url().$language.$match[1];
}
redirect($redirect,'refresh');
}else{
redirect(base_url(),'refresh');
}
}
}
希望有帮助。检查此项以获得完整的解决方案。他希望重新路由控制器/方法名称,而不仅仅是语言段。当然可以。我能怎么做?重新路由控制器/方法名称…您的语言文件是否存储在数据库中?还要考虑:链接en/landscape和de/landschaft是由用户输入创建的(如我们的SO站点问题),是由您自己的后端创建的,还是您仅管理几个硬编码页面?