В Discourse есть встроенная функция под названием
Watched Words, которая может воспроизвести большинство функций этого компонента темы. Рекомендуется использовать её перед установкой данного компонента.
| Краткое описание | Auto-Linkify Words позволяет автоматически создавать гиперссылки для определённых слов или шаблонов в ваших сообщениях, направляя их на указанный URL. | |
| Ссылка на репозиторий | https://github.com/discourse/discourse-linkify-words | |
| Новичок в темах Discourse? | Руководство для начинающих по использованию тем Discourse |
Установить этот компонент темы
Возможности
Как настроить?
Настройте параметры темы в формате
СЛОВО, https://destination.url.com
или с использованием регулярных выражений (в реализации JavaScript) в формате
/regex/, https://destination.url.com
Одна запись на строку.
Использование регулярных выражений
С помощью регулярных выражений вы можете сопоставить определённый шаблон с одним URL. Это полезно для синонимов или слов, которые могут принимать разные формы в предложении и т. д.
Кроме того, вы можете автоматически генерировать URL на основе того, что было найдено. Например, допустим, у вас есть список продуктов, у каждого из которых есть свой числовой идентификатор, и вы хотите автоматически создавать ссылки на их отдельные страницы. Используя
/product-([0-9]+)/, https://myshop.com/product/$1
product-42 будет автоматически преобразован в ссылку https://myshop.com/product/42
Обратите внимание на захватывающие скобки в регулярном выражении и $1 в URL, который заменяется содержимым внутри скобок. Вы также можете захватывать несколько частей строки и использовать $2, $3 и так далее.
Регулярные выражения по умолчанию чувствительны к регистру (в отличие от слов, которые не чувствительны к регистру). Однако вы можете изменить это, используя стандартный модификатор «i», например так:
/foo/i, https://example.com
В этом случае будут найдены FOO, Foo или foo.
Как это выглядит в действии?
Ограничения
- Замена отображается только в веб-интерфейсе и не появляется в электронных письмах.
Параметры
| Название | Описание |
|---|---|
| связанные слова | |
| исключаемые теги | |
| исключаемые классы |
Благодарности
Большое спасибо @Osama за создание настроек темы и https://stackoverflow.com/questions/8949445/javascript-bookmarklet-to-replace-text-with-a-link за подсказки по реализации.
Хостинг у нас? Компоненты тем доступны для использования в наших тарифных планах Standard, Business и Enterprise.









