Компонент мультиязычность и новый API translate через yandex cloud

 
Посетитель
small user social cms
Медаль
Сообщений: 424
В компоненте мультиязычность есть яндекс переводчик, который очень облегчает процесс перевода, но с недавнего времени API для переводчика яндекса стал платным, кто-нибудь знает как настроить платный API translate через yandex cloud ?
И вообще где вся взаимосвязь с API yandex в компоненте прописывается?
Посетитель
small user social cms
Медаль
Сообщений: 424
Вроде здесь templates\default\controllers\multilang\backend\add.tpl.php javascript для API переводчика
Код PHP:
  1. <script type="text/javascript">
  2. $(document).ready(function(){
  3. $('form .field label').append('<?php echo $btn; ?>');
  4. });
  5. function ya_get(button){
  6. <?php if($options && isset($options['key'])){ ?>
  7. button = $(button);
  8. $('img', button).attr('src', '/templates/default/images/loading.gif');
  9. var key = '<?php echo $options['key'] ? $options['key'] : false; ?>';
  10. if(key){
  11. var block = $(button).parents('.field');
  12. var field = $('input, textarea', block).attr('name');
  13. if(field){
  14. <?php $url = '/multilang/translation/' . $type . '/' . $parent . '/' . $id . '/' . $lang; ?>
  15. $.post('<?php html($url); ?>', {field : field}, function(result){
  16. if(result.error){
  17. alert(result.translate);
  18. } else {
  19. $('form input[name="'+field+'"], form textarea[name="'+field+'"]').val(result.translate);
  20. if ( $( 'form #f_'+field+' .redactor_editor' ).length ) {
  21. $('form #f_'+field+' .redactor_editor').html(result.translate);
  22. }
  23. $('img', button).attr('src', '<?php html($flag); ?>');
  24. }
  25. }, 'json');
  26. }
  27. } else {alert('<?php html(LANG_MULTILANG_ERROR_API_KEY); ?>');}
  28. <?php } else { ?>
  29. alert('<?php html(LANG_MULTILANG_ERROR_API_KEY); ?>');
  30. <?php } ?>
  31. }
  32. </script>
Реклама
cms
Посетитель
small user social cms
МедальКубок зрительских симпатийАвторитет форума
Сообщений: 1401
Vladimir:
И вообще где вся взаимосвязь с API yandex в компоненте прописывается?
Вот тут https://github.com/my-instantcms/icms2_multilang/blob/master/package/system/controllers/multilang/frontend.php см. функцию actionTranslation

По поводу API сам не знаю как быть, других решений не знаю, а yandex cloud смотрел, не помню но что то не подошло
Дополнения для InstantCMS 2 | Готовый сайт Доска объявлений
Посетитель
small user social cms
Медаль
Сообщений: 694
Evanescence:
По поводу API
О платном будущем - https://cloud.yandex.ru/services/translate

Там подчёркнуто, что Yandex Translate построен на основе опыта создания Яндекс.Переводчика.
Ссылка на последний была дана ранее в комментариях здесь - https://instantcms.ru/blogs/moi-razrabotki/komponent-multijazychnost.html#c114304
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.