Установить языковой куки при посещении страницы с CodeIgniter - PullRequest
1 голос
/ 26 декабря 2011

Я хочу установить cookie-файл всякий раз, когда пользователь посещает страницу, поэтому не только домашняя страница, но и люди, которые находят сайт через Google.

На каждой странице мне нужно проверять, является ли пользователь пользователем или нет.У меня есть печенье, установленное на его языке.Если я не установил cookie, создайте его, если он есть, ничего не делайте.

Могу ли я создать функцию, которую можно загружать на каждую страницу?Если да, то как?

Я использую инфраструктуру codeIgniter с i18n 2.1 для мультиязычности.

У меня также есть второй вопрос: я использую i18n для мультиязычности.Я установил nl в качестве первого языка в массиве:

private $languages = array(
    'nl' => 'dutch',
    'en' => 'english',
    'de' => 'german',
    'fr' => 'french'        
);

, но каждый раз, когда вы посещаете мой базовый url, en, english, загружается.Я что-то упустил?

Редактировать: Кажется, я просто не могу загрузить нужный язык.cookie установлен на голландский, но когда я захожу на базовый URL и проверяю, какие cookie загружены, он просто игнорирует cookie и загружает домашнюю страницу на английском языке.

1 Ответ

2 голосов
/ 27 декабря 2011

По первому вопросу:

Чтобы создать функцию, которая запускается на каждой странице, вам необходимо расширить базовый класс Controller. Довольно хорошие инструкции здесь:

http://codeigniter.com/wiki/MY_Controller_-_how_to_extend_the_CI_Controller

Вы создадите файл с именем MY_controller.php и поместите его в /application/core/.

.

Затем внутри метода конструктора расширения вы можете вызывать функции, которые будут запускаться на каждой странице.

Я не уверен в вашем втором вопросе. Я всегда строил языковые системы отдельно и позволял пользователям выбирать язык.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...