GIF-файлы Discourse

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

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

Возможности

После поиска вы получаете бесконечную стену связанных гифок:

recording

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

shut up and take my money GIF by Product Hunt

Это сильно основано на старой ветке ReplyGif: Adding reaction GIF easily, поэтому спасибо @cpradio.

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

  • Он может использовать анимированные webp вместо gif, поэтому он гораздо эффективнее для трафика.

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

  • Предлагается выбор между Giphy API и Tenor API.

  • Бесконечная прокрутка результатов

  • Полученные гифки загружаются в Discourse с использованием нашей встроенной защиты от битрот. Вы можете отключить это поведение с помощью существующих настроек, если место является проблемой.

  • Нет необходимости возиться с nginx для настройки прокси для HTTPS

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

Чтобы компонент работал, вам нужно посетить Dashboard | GIPHY Developers и нажать как на изображении:

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

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

Получите ключ на официальном сайте Tenor: GIF API - Better, Faster & Free | Get Your GIFs with 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: Когда «Ограничить количество результатов бесконечного поиска» включено, мы будем искать, пока не получим это максимальное количество результатов GIF. Каждый вызов 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. Дополнительную информацию можно найти в Tenor API Guides .
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 лайка