Перевод 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 будет автоматически переводиться

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

Мокап шаблон деревянной рамки для фотографии
100 качественных реалистичных мокапов
Шаблоны форм обратной связи на Bootstrap

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