Как сделать сворачивающиеся блоки в посте Wordpress

kolchakA
На сайте с 19.06.2010
Offline
226
2349

Хочу сделать посты несколько более компактными за счет помещения текста в несколько сворачивающихся и разворачивающихся блоков. Подскажите как это сделать плз.

Автоматизация для SEO : подключение API, пайпланы из нескольких сервисов, AI генерация контента
maldivec
На сайте с 04.11.2008
Offline
160
#1

Установить http://jqueryui.com/docs/accordion/

и писать пост в соответствующей структуре, т.е делить на блоки с заголовками

[umka]
На сайте с 25.05.2008
Offline
456
#2

Я делаю спойлеры [примерно] как на rutracker-е вот таким макаром:

function um_spoiler($content) {
$sid=1;
$content=preg_replace('#\[spoiler( +title="([^"]*)")?\]#ise',"'<div style=\"border:#ddd 1px solid;padding:0;margin: 0px 0px 20px 0px;\"><div style=\"background:#eee;padding:3px 5px 3px 5px;cursor:pointer;\" onclick=\"var spc=document.getElementById(\'spoiler_content_'.\$sid.'\');spi=document.getElementById(\'spoiler_img_'.\$sid.'\');if(spc.style.display==\'none\'){spc.style.display=\'\';spi.src=\'".plugins_url()."/um_spoiler/minus.gif\';}else{spc.style.display=\'none\';spi.src=\'".plugins_url()."/um_spoiler/plus.gif\';}return true;\"><img src=\"".plugins_url()."/um_spoiler/plus.gif\" id=\"spoiler_img_'.(\$sid).'\"> <b>'.(''<'\\2'?'\\2':'Hidden content').'</b></div><div id=\"spoiler_content_'.(\$sid++).'\" style=\"padding:5px;display:none;\">'",$content);
$content=preg_replace('#\[/spoiler\]#is',"</div></div>",$content);
return $content;
}

add_filter('the_content','um_spoiler');

Оформляется в виде плагина или вставляется в functions.inc

plus.gif и minus.gif заимствуются с торрентов :)

В редакторе вставляется код:

[spoiler title="Название спойлера"]Тут скрытый текст[/spoiler]

Свой сделал, т.к. не нашёл среди имеющихся, чтобы был такой же внешний вид :)

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

Лог в помощь!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий