Настройка пользовательских эмодзи

:bookmark: В этом руководстве объясняется, как настроить эмодзи на вашем сайте Discourse с помощью выбора наборов эмодзи, загрузки новых эмодзи, настройки параметров сайта и изменения размеров эмодзи.

:person_raising_hand: Требуемый уровень пользователя: Администратор

Выбор набора эмодзи

В настоящее время Discourse поддерживает пять наборов эмодзи:

  • Fluent UI
  • Noto
  • OpenMoji
  • Twemoji
  • Стандартный (Unicode)

Чтобы получить представление о том, как выглядят разные наборы, вы можете посмотреть сравнение наборов эмодзи. Вы можете настроить параметр сайта emoji_set по адресу /admin/config/emoji/settings вместе с другими параметрами, связанными с эмодзи.

Добавление пользовательских эмодзи

Чтобы добавить пользовательские эмодзи:

  1. Перейдите в раздел Админ → Оформление → Эмодзи по адресу /admin/config/emoji

  2. Нажмите кнопку Добавить эмодзи, чтобы назвать, классифицировать и загрузить изображение вашего эмодзи
    :information: Если у вас есть несколько файлов эмодзи для загрузки, вы можете выбрать до 10 изображений в файловом диалоге для пакетной загрузки. В этом случае имена файлов изображений будут использоваться в качестве имен эмодзи.

Пакетный импорт пользовательских эмодзи

Вы можете импортировать до 1000 эмодзи через один ZIP-архив с манифестом emojis.csv. Файл CSV должен содержать следующие столбцы с заголовками: name, group, filename.

name,group,filename
emoji_a,group_name,image.png

Процесс импорта полностью зависит от манифеста. Если файл или строка отсутствуют, они будут пропущены. Поле group может быть оставлено пустым, в этом случае пользовательский эмодзи будет добавлен в группу default.

Чтобы выполнить импорт:

  1. Перейдите в раздел Админ → Оформление → Эмодзи по адресу /admin/config/emoji

  2. Нажмите кнопку Импорт и выберите ZIP-файл, содержащий ваши эмодзи.

  3. Предварительно просмотрите импорт и подтвердите изменения. Здесь вы можете разрешить любые конфликты, выбрав, какие эмодзи оставить. Конфликты могут возникнуть, если уже существует эмодзи с тем же именем (но в другой группе или с другим изображением). Чтобы завершить импорт, нажмите Подтвердить импорт.

Пакетный экспорт пользовательских эмодзи

Пользовательские эмодзи можно экспортировать в один ZIP-файл. Полученный ZIP-файл будет содержать манифест emojis.csv, готовый к импорту на любой сайт Discourse без изменений. Он содержит изображение, имя и группу каждого эмодзи.

Чтобы выполнить экспорт, нажмите кнопку Выбрать для экспорта и выберите все эмодзи, которые вы хотите экспортировать. Когда будете готовы, нажмите кнопку Экспорт, и будет загружен ZIP-файл.

Закрепление групп эмодзи вверху пикера

n
Вы можете закрепить любую группу эмодзи вверху пикера эмодзи. Доступ к параметру emoji_picker_pinned_groups осуществляется через Админ → Оформление → Эмодзи → Настройки по адресу /admin/config/emoji/settings. Введите имя группы эмодзи, которую нужно закрепить вверху пикера.

Вверху пикера можно закрепить как пользовательские, так и стандартные группы эмодзи. Например, ввод flags переместит группу эмодзи флагов в верхнюю часть списка, выше смайликов.

Имена стандартных групп эмодзи:

  • smileys_&_emotion
  • people_&_body
  • animals_&_nature
  • food_&_drink
  • travel_&_places
  • activities
  • objects
  • symbols
  • flags

Параметры эмодзи

Вы можете получить доступ к параметрам эмодзи по адресу /admin/config/emoji/settings, чтобы настроить поведение эмодзи на вашем сайте.

  • enable_emoji — Включить отображение и использование эмодзи в вашем экземпляре Discourse. Если отключено, эмодзи не будут отображаться, и пользователи не смогут получать к ним доступ или использовать их в текстовых полях.
  • emoji_set — Выберите предпочитаемый стиль эмодзи. Разные наборы эмодзи могут придавать уникальный вид эмодзи, отображаемым на сайте.
  • max_emojis_in_title — Максимальное допустимое количество эмодзи в названии темы (по умолчанию: 1). Если установленное значение равно нулю, использование любых эмодзи в названиях тем будет запрещено.
  • enable_emoji_shortcuts — Обычный текстовый смайлик, такой как :) :p :(, будет преобразован в эмодзи.
  • emoji_autocomplete_min_chars — Минимальное количество символов, необходимое для вызова всплывающего окна автозаполнения эмодзи (по умолчанию: 0).
  • enable_inline_emoji_translation — Включает перевод для встроенных эмодзи (без пробелов или знаков препинания перед ними).
  • emoji_deny_list — Эти эмодзи не будут доступны для использования в меню или коротких кодах.
  • emoji_picker_pinned_groups — Эти группы эмодзи закреплены вверху пикера эмодзи.
  • external_emoji_url — URL-адрес внешнего сервиса для изображений эмодзи. Оставьте пустым, чтобы использовать значение по умолчанию.
  • discourse_reactions_enabled_reactions — Определяет список включенных реакций, здесь разрешен любой эмодзи. Реакции по умолчанию: +1, laughing, open_mouth, clap, confetti_ball и hugs.
  • discourse_reactions_excluded_from_like — Реакции, которые не учитываются как «Нравится». Любые реакции, не входящие в этот список, будут учитываться как «Нравится» для значков, отчетов и других целей.
  • discourse_reactions_allow_any_emoji — Если эта функция включена, будет добавлена кнопка, позволяющая пользователям выбирать любой эмодзи в пикере реакций. Участникам будет разрешено выбирать любой эмодзи, включая пользовательские, для реакций. Чтобы ограничить доступные реакции, используйте параметр сайта emoji_deny_list.

Изменение размера пользовательских эмодзи

По умолчанию все эмодзи изменяются через CSS до размера 20x20, но это можно переопределить с помощью пользовательского CSS. Чтобы сохранить правильное соотношение сторон и исходный размер в сообщениях, добавьте следующий CSS:

/* Make emoji normal size (don't force square) */
div.topic-post img.emoji[src*="uploads"], 
div.d-editor-preview img.emoji[src*="uploads"], 
div.emoji-modal img.emoji[src*="uploads"], 
div.d-editor-textarea-wrapper img.emoji[src*="uploads"], 
div.title-wrapper img.emoji[src*="uploads"], 
td.main-link img.emoji[src*="uploads"] {
  width: auto;
  height: auto;
}

Чтобы настроить размер конкретного эмодзи, используйте:

img.emoji[title=":youremoji:"] { 
  height: XXpx; 
  width: YYpx; 
}

Для изменения размера эмодзи в сообщениях чата и статусе пользователей в чатах:

div.chat-message-text img.emoji[src*="uploads"], 
span.user-status-message img.emoji[src*="uploads"] {
  width: auto;
  height: auto;
}
33 лайка

15 сообщений были перенесены в новую тему: Различные обсуждения эмодзи