У меня есть клиент, который хотел бы размещать рекламу в сводных и уведомительных письмах. Я «написал» плагин, который позволяет добавлять текст в дайджест-письма (хотя, по-моему, его нужно обновить, чтобы он соответствовал изменениям в шаблоне).
Мне не нравится, что для кастомизации этих писем приходится переопределять весь шаблон.
Можно ли реализовать возможность добавления контента в эти письма без переопределения шаблона?
Плагин работает так: он получает ID темы из пользовательского поля и включает raw-версию последнего сообщения в теме как текст, добавляемый в письмо (непосредственно перед заголовком или после него). Хотя это довольно хитрый трюк, он кажется слишком сложным и неудобным решением для включения в ядро. Возможно, существует способ, чтобы плагин рекламы мог применять внутренние рекламные объявления к дайджестам и сводным письмам?
Управление ненадёжным плагином
Может быть, мне стоит написать спецификацию, которая сравнивает дайджест-письмо с отключённым плагином и дайджест-письмо с включённым, но не настроенным на добавление чего-либо плагином? Тогда я смогу отслеживать изменения в основном шаблоне?
Насколько я понимаю, digest_custom_html и digest_custom_text уже реализуют хуки для digest.html.erb и digest.text.erb. Таким образом, базовая реализация этой задачи потребовала бы добавления дополнительных хуков?
Более продвинутая реализация могла бы включать подшаблоны, которые позволяли бы авторам плагинов использовать стили и код форматирования, поддерживаемые командой Discourse.
Правильно ли я понимаю, что ваша реализация возможна при добавлении одного хука digest_custom_html("before_preheader") в digest.html.erb?
Привет, @thoka, тебе удалось что-то реализовать через эти хуки? Мы сейчас рассматриваем возможность внедрения простых спонсируемых сегментов через эти хуки.