Категория:
Опубликовано:

Как сделать спойлер (раскрываемый текст)

Спойлер Drupal

Так называемый "Спойлер" или скрываемый текст (collapsed text) - это обычный блок с текстом или любым другим контентом, который можно опустить из основного содержания.

Ну или намерено спрятать от не желающих знать, например скрыть развязку фильма от еще не смотревших.

Рассмотрим как это можно реализовать в Drupal.

Есть такой модуль: Collapse Text. Установим его и включим как обычно это делаем.

Модуль добавляет фильтр Collapsible text blocks. Его нужно включить в настройках форматов ввода, в которых планируется поддержка данного функционала. Сделать это можно на странице admin/config/content/formats (Управление » Конфигурация » Работа с содержимым » Форматы текста).

На странице настраиваемого формата отмечаем фильтр и помещаем его ниже обработчиков HTML (если они включены). Сохраняем настройки.

Collapsible text settings

Теперь в текстовых полях, выбираем формат ввода который только что настроили, и пишем свой текст. Тот фрагмент который нужно скрыть помещаем между тегами в квадратных скобках [collapse] и [/collapse], и сохраняем.

Если нужно вывести скрытый по умолчанию спойлер - следует писать открытый тег [collapse collapsed], или сокращенно [collapsed] (будет автоматически преобразован в [collapse collapsed]).

Так же можно использовать свойства "title=" для указания заголовка спойлера, и "class=" - для установки своего CSS-класса.

P.S. Есть похожий модуль Spoiler. Пока его не тестил.

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

Комментарии

Посоветуйте пожалуйста как реализовать следующие:
У меня на главной стр. выводятся анонсы Статей и Блогов; при клике на имя материала или на ссылку "Далее..." открывается страница с материалом. Я хотел бы, чтоб материал Статья так и открывался на новой стр., а материал Блог открывался тут же на главной. По сути как описано в Вашем примере, только не кусок текста, а полный текст материала. И чтоб не нужно было корректировать текст тегами...

Советую реализовать это с помощью небольшого js.

Если содержимое больших размеров, можно подгружать Ajax'ом.

Огромнейшее спасибо, что не забываете про просьбы и вопросы поставленные с старых комментариях.

По поводу этого модуля, это именно то, что я искал... Жаль что он работает с ошибками. Он дублирует текст "краткого отображения". И если не трудно, поясните человеческим языком, что значит "inline"? В этом и других модулях встречал вкл/выкл "inline", но все об этом пишут как о чем-то само собой разумеющемся...
Я еще нашел модуль "Read More Control", но я не разобрался как его настроить или не верно истолковал описание к нему. Основное его предназначение скрывать "читать далее" ссылку если весь текст уже показан. Но также переписать адрес ссылки и атрибуты и где ее открывать... Я не понял как это настроить, чтоб на той же стр. оставался полный текст... Если Вы столкнетесь с этим модулем, подскажите мне пожалуйста как его адаптировать к моим целям.

Добавить комментарий