Добавить на страницу свои стили CSS можно посредством административного интерфейса, программировать не обязательно.
Однако программная реализация этой задачи обладает своими преимуществами:
- программная реализация не требует ручной работы от администратора
(администратор подключает модуль — и всё работает) - программную реализацию можно повторно использовать на разных сайтах (так, у меня 3 форума на движке Discourse, и намного быстрее поправить плагин в одном месте, чем настраивать админку каждого сайта)
- программная реализация может являться частью более общей функциональности плагина
Discourse программно расширяется и модифицируется посредством плагинов.
Для программного добавления на страницу стилей CSS надо подключить их посредством плагина.
Для этого предназачена директива register_asset
, которую надо разместить внутри основного программного файла плагина plugin.rb
.
Например:
register_asset "stylesheets/main.scss"
Сам файл со стилями разместите в подпапке assets/stylesheets
плагина.
Обратите внимание, что для правил CSS можно использовать не только язык CSS, но и более мощный и лаконичный язык SASS (как в примере выше).
В качестве примера можно посмотреть два стандартных плагина, которые включены в дистрибутив Discourse: https://github.com/discourse/discourse/tree/master/plugins