про get — спасибо, кстати, может стоит добавить в мануал.
Внимательно ознакомься в мануале с пунктами «Установка базового языка» и «Получение списка языков».
В контексте ничего выставлять не надо. Настройка cultureKey будет меняться в зависимости от того, какой языковой ключ сейчас актуален. Добавил новый язык, выставил в настройках компонента базовый cultureKey. Остается только в GET передать ?cultureKey=lv
А как передать языковой ключ( чтобы изменить язык)? Т.е. насколько я понял — cultureKey — настройка контекста. как ее поменять? Т.е. у меня один контекст ( в нем cultureKey — ru), я хочу добавить латышский язык — захожу в компоненты -> xlexicon -> добавляю язык( по мануалу). Редактирую страницы( заполняю вкладку dictionaries). если в ручную теперь в контексте выставить lv — ничего не меняется- главная как называлась по русски — так и называется(title).
хотя можно просто запилить набор параметров и вызывать сниппет с ним Это не решает проблемы передачи трех параметров — id ресурса, языковой ключ и поле документа. Трех нет, пяти да. Да и языковой ключ не нужно передавать. Он берется автоматом от текущего cultureKey. Только 2 параметра остается id русурса и поле документа.
Но в планах скорее связать модуль с modxSite и использовать runprocessor оттуда Разницы нет. От этого кол-во входящих параметров не изменится. хотя можно просто запилить набор параметров и вызывать сниппет с ним Это не решает проблемы передачи трех параметров — id ресурса, языковой ключ и поле документа.
В целом так и есть. Слишком много параметров. Облегчить сниппет — хорошая мысль. Но в планах скорее связать модуль с modxSite и использовать runprocessor оттуда. В таком случае так или иначе передавать ns и action, хотя можно просто запилить набор параметров и вызывать сниппет с ним. Думаю так будет более универсально.
Пример вызова: [[!*pagetitle:xlexicon=pagetitle
]] Но, к примеру, для Wayfinder-а он как модификатор не годится, так как для него требуется передача трех параметров (res (resource_id), key, field). У нас же здесь только два параметра (input и options). Как-то я не нашел вариантов передавать в модификатор поппараметры, поэтому приходится все равно прописывать в виде вызываемого сниппета.
Сергей, позволь мне свои 5 копеек… 1. ns=xlexicon
&action=web/dictionaries/getfield
Их имеет смысл закинуть в свойства плагина по умолчанию. 2. Я тут немного допилил его, чтобы он вызывался как модификатор (только переименовал его в xlexicon): <?php
$output = '';
if(!$res AND !empty($modx->resource)){ $scriptProperties['res'] = $modx->resource->id; }
if(!$field AND !empty($options)){ $scriptProperties['field'] = $options; }
$params = array(); //............ Далее твой код
отлично, спасибо, только собирался искать мануал.