0

嗨,任何人都可以向我展示如何编写多语言网站的方法,该网站不仅可以更改菜单,还可以更改文章的标题和内容。

基本上,我想每次写一篇文章,我都会把它分别写成2种语言,然后插入到mysql中。当我在前端更改语言时,一切都会更改为另一种语言并保持该语言,直到我将其更改回来

所以,任何人都向我展示了一个最好的方法。请我急需

提前致谢

4

2 回答 2

0

内容如:菜单、按钮、消息不必进入数据库。使用 CI 和语言类来处理这些。

如果您有动态内容,例如博客文章或新闻和文章,请使用不同语言的数据库。

控制器将是这样的:

    class Language extends CI_Controller{

    function Language(){
        parent::__construct();
    }

    function change($language = null){  
        $language = urldecode($language);

        switch($language){

            case "English":
                $this->session->set_userdata('lang_id', 2);
                $this->session->set_userdata('lang_name', 'english');
                redirect($_SERVER['HTTP_REFERER'], 'refresh');

            break;

            case "Deutsch":
                $this->session->set_userdata('lang_id', 3);
                $this->session->set_userdata('lang_name', 'deutsch');
                redirect($_SERVER['HTTP_REFERER'], 'refresh');

            break;

            default:
                $this->session->set_userdata('lang_id', 3);
                $this->session->set_userdata('lang_name', 'deutsch');
                redirect($_SERVER['HTTP_REFERER'], 'refresh');

            break;

        }

    }
}

并转到页面/类的索引:

//LOAD LANGUAGE SETTINGS
        $lang = $this->session->userdata('lang_name');

        if($lang != ''){
            //load default language folder
            $this->lang->load('home');
            $this->lang->load('extra_menu');
            $this->lang->load('base_menu');
            $this->lang->load('breadcrumbs');

        }else{
            //load language file and folder
            $this->lang->load('home', $this->session->userdata('lang_name'));
            $this->lang->load('extra_menu', $this->session->userdata('lang_name'));
            $this->lang->load('base_menu', $this->session->userdata('lang_name'));
            $this->lang->load('breadcrumbs', $this->session->userdata('lang_name'));                
        }
于 2012-11-22T17:05:29.383 回答
0

H,

使用 codeigniter 语言类http://ellislab.com/codeigniter/user_guide/libraries/language.html

这里有一些较旧的帖子。看看 使 codeigniter 网站多语言的最佳方法。从 lang 数组调用取决于 lang 会话?

问候

iijb

于 2012-11-22T12:15:33.580 回答