Мне невероятно интересно узнать о самых удивительных модификациях, которые вам удалось реализовать на вашей платформе Discourse. Я знаю, что многие используют стандартные темы и плагины, но я уверен, что существуют и другие платформы с полностью уникальными доработками. Я с нетерпением жду возможности увидеть эти творения.
Уникальна ли ваша платформа Discourse каким-либо образом? Если хотите, пожалуйста, представьте свой сайт в этой теме. Так, возможно, перед нами откроется совершенно новый взгляд, демонстрирующий замечательную гибкость Discourse и невероятный уровень кастомизации, которого можно достичь.
Эта тема не предназначена для вопросов вроде… «Попросить поделиться исходным кодом кастомизации». Цель — просто увидеть, что возможно, и, возможно, почерпнуть какие-то идеи… В любом случае, если автор или создатель захочет поделиться своими модификациями, он может сделать это в категориях #theme, #theme-component или #plugin.
Мы разрабатываем множество собственных плагинов для Discourse вместе с нашими сервисами WordPress.
Несколько примеров кастомизации:
Запросы обновлений
Клиенты на нашем основном сайте смогут автоматически запрашивать новые обновления для тем и плагинов WordPress с помощью специального плагина для Discourse.
Перевод участников в специальную группу при использовании продукта WooCommerce с лицензией
На наших системах WordPress активирован WooCommerce как компонент магазина. Каждый раз, когда клиент покупает лицензию или делает заказ, он автоматически получает доступ к определённому уровню пользователя в Discourse, чтобы иметь возможность пользоваться сообществом поддержки.
И несколько других небольших интеграций:
Автоматическая подписка на тему в Discourse при загрузке темы или плагина.
Автоматическая синхронизация пользователей при регистрации из WordPress в Discourse.
Мы также используем make.com для автоматизации множества других задач.
Это лишь моё скромное мнение, и я с нетерпением жду обсуждения других интеграций
Я модифицировал плагин подписи, чтобы пользователи могли указать набор своих любимых покемонов для отображения под своим сообщением (это форум, посвящённый покемонам). Также я добавил систему значков, которая награждает пользователей значком при достижении определённого количества сообщений. Этот значок отображается под именем пользователя. Есть ещё плагин, позволяющий людям указывать свои аккаунты в Instagram/YouTube/eBay рядом с именем. Ничего слишком сложного.
Более продвинутым примером стал плагин для Discord, который я создал и который связывает аккаунты между Discourse и Discord. Он хранит все сообщения в базе данных Discourse, что позволяет быстро получать общее количество сообщений в Discord (это функция, которую иначе было бы сложно реализовать, верьте или нет). В зависимости от количества сообщений вы можете получить значок на форуме (а также соответствующий ранг через API Discord-бота). Вы также можете просматривать свои сообщения из Discord на Discourse — почему бы и нет?
Не очень хороший пример того, что можно сделать с Discourse…
но вы можете установить любую тему, какую захотите. Это может показаться безумным, ведь сломанное = безумное, верно?
Скрипт создаёт droplet, настраивает Mailgun и отправляет вам электронное письмо с необходимыми настройками DNS. После того как вы их примените, он установит Discourse и отправит уведомление об окончании процесса.
В Backbase мы использовали сильно модифицированный экземпляр Discourse, который обслуживал всю нашу документацию по продуктам (преобразованную из Asciidoc и Docbook). Около 1,5 млн документов, полностью встроенных в фреймворк Ember Discourse. У нас был собственный поиск Algolia, охватывающий всё это.
Кроме того, мы разработали систему с использованием геймификации и значков, имитирующую Salesforce Trails.
К сожалению, это было закрытое сообщество, поэтому у меня не так много визуальных материалов для демонстрации
Несколько лет назад я опубликовал пост с некоторыми скриншотами:
Не могли бы вы поделиться этим модифицированным плагином и рассказать, как вы реализовали последнюю часть вашего ответа здесь? Я бы с радостью использовал его как основу для доработки под свои нужды.