GIF-анимации Discourse

| |
| - | - |
| :discourse2: | Краткое описание | Плагин Discourse Gifs добавляет кнопку в редактор, позволяющую искать GIF-анимации и легко вставлять лучшую из них в ваш пост.
| :hammer_and_wrench: | Ссылка на репозиторий | https://github.com/discourse/discourse-gifs
| :open_book: | Новичок в темах Discourse? | Руководство для начинающих по использованию тем Discourse

Установить этот компонент темы

Возможности

После поиска вы увидите бесконечную прокручиваемую ленту связанных GIF-анимаций:

recording

При клике на один из них он вставляется в текущий редактор, который выглядит так:

shut up and take my money GIF by Product Hunt

Этот плагин во многом основан на старом форке ReplyGif: Простое добавление реакционных GIF, поэтому спасибо @cpradio.

Основные отличия:

  • Поддержка анимированного формата WebP вместо GIF, что значительно экономит трафик.
  • Является компонентом темы, поэтому его проще устанавливать и обновлять.
  • Выбор между API Giphy и API Tenor.
  • Бесконечная прокрутка результатов.
  • Полученные GIF-анимации загружаются в Discourse с использованием нашей встроенной защиты от битротации. Если проблема в месте хранения, это поведение можно отключить через существующие настройки.
  • Не требуется настраивать nginx для прокси HTTPS.

Получение ключа API Giphy

Для работы компонента необходимо перейти на Dashboard | GIPHY Developers и нажать, как показано ниже:

Заполните форму, и ключ API будет отображен следующим образом:

Получение ключа API Tenor

Получите ключ на официальном сайте Tenor: GIF API — Лучше, быстрее и бесплатно | Получите свои GIF с помощью Tenor

После этого перейдите на страницу компонента темы в Discourse и заполните настройки, например:

Настройки

Имя Описание
api provider Какой провайдер GIF использовать?
giphy api key GIPHY: Ключ API
giphy file format GIPHY: Формат изображения. WEBP имеет меньший размер и загружается быстрее, тогда как GIF обеспечивает совместимость со старыми браузерами.
giphy content rating GIPHY: Рейтинг контента для результатов поиска. Дополнительную информацию см. на https://developers.giphy.com/docs/optional-settings#rating .
giphy locale GIPHY: Язык для поиска. Используется для адаптации поиска к региональному контенту. Установите значение по умолчанию для вашего форума.
limit infinite search results Ограничить количество результатов поиска GIF при бесконечной прокрутке для предотвращения превышения лимита запросов API.
max results limit Tenor и GIPHY: Если включено «Ограничить количество результатов поиска», поиск будет продолжаться до достижения указанного максимального количества результатов. Каждый вызов API возвращает 24 результата, например: Максимальный лимит 240: 240 / 24 = 10 вызовов API.
tenor api key Tenor: Ключ API версии V2. Инструкция по его получению доступна на странице Discourse Meta — Discourse Gifs .
tenor client key Tenor: (необязательно) строка, указанная клиентом, представляющая интеграцию.
tenor file detail Tenor: Формат изображения для использования.
tenor content filter Tenor: Уровень фильтрации контента для результатов Tenor. Дополнительную информацию см. в Руководствах по API Tenor .
tenor country Tenor: Двухбуквенный код страны происхождения запроса. Найдите код вашей страны в Wikipedia — ISO_3166-1 .
tenor locale Tenor: Язык для поиска. Можно указать код страны (необязательно) для различения диалектов.
Перевод Значение по умолчанию
gif.modal_title Поиск GIF
gif.query Термин
gif.insert Вставить выбранные изображения
gif.composer_title Поиск GIF
gif.no_results Введите ключевое слово в поле ввода выше для поиска GIF.
gif.bad_api_key Неверный ключ API $api_provider. Администраторы сайта, пожалуйста, проверьте свой ключ и/или аккаунт $api_provider.
gif.error_rate_limit Мы достигли лимита запросов API $api_provider. Пожалуйста, подождите и повторите попытку позже. Если проблема сохраняется, обратитесь к администратору сайта.
gif.error_search_too_long Пожалуйста, сократите поисковый запрос до 50 символов и попробуйте снова.

:discourse2: Размещено у нас? Компоненты тем доступны для использования на наших тарифах Standard, Business и Enterprise.

84 лайка

Привет, @Heather_Dudley,

Я добавил новую настройку сайта, которая позволяет принудительно использовать формат GIF для компонента вместо WebP.

Обратите внимание, что это занимает более чем в два раза больше места на диске и пропускной способности сети, при этом качество изображения ниже.

Вот этот GIF:

GIF: 3,5 МБ
giphy

WEBP: 1,4 МБ
Detective Pikachu Reaction GIF

MP4: 1 МБ

AVIF: 276,8 КБ

Для всех остальных я добавил автоматическую фокусировку в модальном окне поиска!

17 лайков

Отлично, огромное спасибо! Я искал такую функцию :slight_smile:

3 лайка

Где находится настройка, @Falco? Я не могу её найти, чтобы включить.

1 лайк

1 лайк

Хорошо, значит, я не слепой, у меня нет такой опции. У меня есть только ключ API:

Репозиторий, к которому я подключен: https://github.com/discourse/discourse-gifs/tree/giphy

1 лайк

Ой, вы установились в старую ветку. Переустановите, используя основную ветку: GitHub - discourse/discourse-gifs · GitHub

3 лайка

Аааа, вот оно что. Спасибо. Я не предвижу проблем, но если что-то возникнет, я сообщу!

4 лайка

Разве нельзя использовать платформу Google Tenor? После того как Facebook приобрел Giphy, я перестал им пользоваться и перешел на Tenor.

3 лайка

В первой версии этот компонент использовал Tenor, но я перешел на Giphy, так как использование GIF в формате WEBP значительно улучшает удобство использования по сравнению с другими форматами. Кроме того, Tenor не поддерживает GIF в формате WEBP.

4 лайка

Иронично, учитывая, кто создал формат WebP и кто теперь владеет Tenor.

8 лайков

Возможно, они сразу перейдут на анимированный AVIF? Он уже работает в Chrome и скоро появится во всех современных браузерах.

Я добавил его в пост выше, размер файла потрясающий:

5 лайков

Как продвигается разработка этого формата? Как долго, по вашему мнению, займет его внедрение другими компаниями (включая Discourse :wink:)?

2 лайка

Discourse легко справится с этим, как только появится поддержка в браузерах: AVIF image format | Can I use... Support tables for HTML5, CSS3, etc

4 лайка

Благодаря @eviltrout теперь кнопка GIF отображается на мобильных устройствах в более подходящем месте, так что это больше не будет происходить!

10 лайков

Спасибо @Falco, можно ли скрыть кнопку GIF при предпросмотре сообщения?


Спасибо

1 лайк

Я не очень хорошо знаком с компонентами темы. Возможно ли включить это только для одной категории?

У нас есть категория «Рандом / Не по теме / Веселье», где это было бы отличным дополнением, но если я добавлю это ко всем категориям, начнётся полный хаос :rofl:

4 лайка

Можно попробовать с CSS, но поскольку композитор остается открытым при навигации по форуму, я не уверен, что это сработает на 100%

Это было бы что-то вроде этого

:not(.category-your_category_id) .d-icon-discourse-gifs-gif-icon {
    display: none
}
4 лайка

Отличная идея. Добавлено в последней версии, пожалуйста, обновитесь!

8 лайков

Это здорово! Отличная работа, я только что добавил это на свой форум!

4 лайка