Перевод title страницы с помощью Яндекс переводчика

Разработка данного модуля не моя - идея была взята с блога modx.im. Для начала необходимо получить API ключ для переводчика у Яндекса. Сделать можно тут. Далее идем в Элементы - Управление элементами - Плагины - Создать новый плагин Название указывайте любое, я выбрал yatranslate Вот собственно код данного плагина

global $e;
$e = &$modx->Event;
$e->output('<!-- yandexTranslation --->
<script>
    window.$j = jQuery.noConflict();
    key="ВАШ КЛЮЧ АПИ";
    source=$j("input[name=\'pagetitle\']");
    result=$j("input[name=\'alias\']");
    url=\'https://translate.yandex.net/api/v1.5/tr.json/translate\';
    function get_translate(source,result,key,debugTxt){
        if(source.val().length>0)
            {
                $j.ajax({
                        type:\'POST\',
                        url: url,
                        cache: false,
                        data:{
                                key:key,
                                text:source.val(),
                                lang:\'ru-en\'
                                },
                        success:function(data){
                                responseStatus=data[\'code\'];
                                if (responseStatus==200)
                                {
                                    responseText=data[\'text\'][0];
                                }
                                else
                                {
                                    responseText=\'Error! \' + responseStatus;
                                }
                                re=/[^a-zа-я]/g;
                                responseText=responseText.toLowerCase();
                                responseText =  responseText.replace(re,"-",responseText);
                                result.val(responseText);
                        },
                        error: function (xhr, ajaxOptions, thrownError) {
                                alert(\'Error ajax\');
                        }
                        });
                }
                else
                {
                        source.css(\'border\',\'1px solid red\');
                }
        };
    $j(source).bind(\'blur change click\',function(){
        get_translate(source,result,key,"change");
    });                 
</script>
<!-- // yandexTranslation --->');

Далее устанавливаем галочку на вкладке системных событий на событии "OnDocFormRender"

Все готово. Теперь при изменении названия страницы alias будет автоматически переводиться

Смотрите также

10 Лучших CSS сниппетов
45 идей для создания креативных  404 страниц
Как вывести ближайшие дни рождения пользователей - Битрикс

Группа Вконтакте