Загрузка...

[DevCore Studios] Translator Title Threads (XenForo)

Тема в разделе Движки, фреймворки создана пользователем ToSa 9 ноя 2024. (поднята 23 ноя 2024) 594 просмотра

Загрузка...
  1. ToSa
    ToSa Автор темы 9 ноя 2024 гость, боже, храни кьют-рок. :beer::beer::beer: 22 942 18 дек 2021
    Возможности аддона:

    - Перевод названий тем (С помощью Google Translate)
    - Новый ББ-Код
    [lang]
    (Должно быть минимум 2 в сообщении)

    При создании темы, если пользователь вводит название темы на русском - оно автоматически переводится на английский язык, и наоборот.

    Также учел пожелания юзеров в прошлых аддонах и добавил Repository. Там одна функция - перевод текста с помощью Google Translate.
    HTML
    <xf:set var="$text" value="{$xf.app.em.getRepository('DCS\TranslatorTitleThreads:Translator').getTranslatedText('Hello World!', 'ru')}"/>
    Вывод:

    [IMG]
    [IMG]

    - Переводить RU заголовок при изменении EN заголовка:
    [IMG]
    Если включено, при изменении "En title" будет переводится и русский заголовок.
    [IMG]

    Используется так. Если человек выбрал русский язык - ему покажется только содержимое тега
    [lang=ru]
    , если английский - соответственно
    [lang=en]


    Также существует проверка на кол-во тегов
    [lang]
    , оно должно быть четным и для разных языков. Если, к примеру, написать так:
    [IMG]

    Или же так:
    [IMG]

    Выйдет ошибка:
    [IMG]
    [IMG]

    С русским:
    [IMG]

    С английским:
    [IMG]

     
  2. lessql
    lessql 9 ноя 2024 LOVE машулю :smile_love: 8658 13 апр 2020
    видишь тему с не русским названием -> кидаешь репорт, что еще нужно то :ok_angry:
     
    1. ToSa Автор темы
      lessql, на эту тему тоже получается?
    2. lessql
      ToSa, пожалуй воздержусь, но будь осторожен
  3. Гомиак
    Гомиак 9 ноя 2024 НЕРВЫ ГОНДУРАСЫ 331 31 дек 2019
    неплохая фича, полезно
     
  4. neverd3
    neverd3 18 ноя 2024 8 2 май 2021
    Было бы неплохо вместо лишних запросов в БД, использовать систему кэширования, в виде Memcached или Redis.
    Ради того, чтобы получить переведённый заголовок обращаться к бд, если это можно реализовать проще - нецелесообразно, как по мне.

    В
    ⁡DCS\TranslatorTitleThreads\XF\Entity\Post;
    ⁡про валидацию наличия двух тегов - жесть.
    Можно было обойтись без этой проверки и всего лишь одним BB-кодом, только при его рендере, получать язык визитора и в соответствии с этим — отдавать уже нужный перевод части текста в этом BB-коде (при этом не забывая про кэш). Костыль.

    И насчёт использования переводчика в шаблонах, во первых тянуть целый репозиторий для этого неправильно (да и в целом, репозиторий, по задумке, должен в себе содержать взаимодействие с базой данных, а не полезные функции, утилки)
    Было бы лучше расширить имеющийся у ксенфоро шаблонизатор, добавив свою функцию или фильтр. В первом случае, так же принимать изначальный текст, и код языка для перевода, во втором же, можно так же, подтянуть язык визитора и перевести выделенный текст.

    Задумка неплохая. Но реализация подкачала :)
     
Top