Добавляем фильтр в wysiwyg в Drupal

Пример добавления обработчика (фильтра) текста в rich editor.

Требуется всего два шага для реализации нового фильтра:

  • имплементировать hook_filter_info(), и саму функцию фильтра;
  • прикрепить фильтр к нужному вам формату текста в админке сайта — /admin/config/content/formats.

Для примера рассмотрим как создать фильтр, добавляющий bootstrap css обертку для ваших таблиц. Если вы используете bootstrap фреймворк на вашем сайте, то, чтобы сделать таблицы <table> mobile-friendly, требуется обернуть их в специальный контейнер:

<div class=»table-responsive» /> контейнер позволяет выполнять горизонтальный скролл таблицы, если её ширина на конечном устройстве больше ширины экрана.

Объявим фильтр в нашем модуле MYMODULE.

В нашем случае фильтр очень простой, не требует настроек. Но зацепка (hook_filter_info) позволяет передать также параметры: settings callback и default settings. Так вы сможете создать форму для настроек фильтра.

Подсказка для фильтра выводится как описание возможностей выбранного формата текста.

Осталось только реализовать сам фильтр.

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

Остаётся только прикрепить фильтр у нужному формату текста.

Мало букафф? Читайте есчо !

Организуем автодеплой изменений из репозитория для проекта на Drupal

Август 23, 2018 г.

Когда над проектом работает несколько разработчиков, то возникают определенные структурные и организационные вопросы. Каждый программист обычно работает ...

Читать

Программно устанавливаем значения настроек на страницах, созданных Config Pages

Ноябрь 22, 2018 г.

Модуль Config Pages позволяет создавать страницы конфигурации для вашего модуля, всего сайта, или может быть просто одного из разделов сайта. Потом эти значения можно читать из программы и использовать так, как вам требуется. Но API Config Pages не содержит ...

Читать

Создать пользователя сразу на всех сайтах мультисайтинга в Drupal

Июнь 6, 2019 г.

С помощью drush и такой то матери (bash) обойдем все сайты и создадим одного и того же юзера на каждом из сайтов. Долго тянуть не стану - вот текст скрипта: [crayon-697bbb40b3555174414777/] В начале вы задаёте нужные переменные (задайте свои ...

Читать

Примеры работы с EntityFieldQuery

Декабрь 7, 2017 г.

Один раз начав работать с EntityFieldQuery, вы уже не захотите городить SQL запросы с джойнами таблиц полей сущностей. Что то сложное, возможно, сделать будет слишком трудно на этом конструкторе, но типовые выборки данных делать приятно, быстро и удобно. ...

Читать
 

Комментарии к «Добавляем фильтр в wysiwyg в Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: