Помощник
|
По умолчанию [DLE] Вывод содержания статьи в новости |
Demcheg
|
Сообщение
#1
|
||
|
|
||
|
|||
Alex_RD |
6.1.2015, 7:00;
Ответить: Alex_RD
Сообщение
#2
|
|
в fullstory.tpl заменить {full-story} на
Код <div id="table_of_contents">
<div class="toc-title">Содержание</div> <ul> </ul> </div> <div id="the_content">{full-story}</div> <script> $(document).ready(function(){ $("#the_content h1, #the_content h2, #the_content h3, #the_content h4, #the_content h5").each(function(i) { var current = $(this); current.attr("id", "title" + i); $("#table_of_contents ul").append("<li class='list-" + current.prop("tagName") + "'><a id='chapter" + i + "' href='#title" + i + "' title='" + current.prop("tagName") + "'>" + current.html() + "</a></li>"); }); }); </script> -------------------- Wordpress, HostCMS, DataLife engine, Shop-Script... Портфолио (beta) |
|
|
Demcheg
|
Сообщение
#3
|
|
Alex_RD, круто, спасибо огромное!
Но тут возникает немножко другая проблемка - такой код не распознает различия между h2 и h3, чтобы сделать древовидный вывод содержания. |
|
|
Alex_RD |
10.1.2015, 15:46;
Ответить: Alex_RD
Сообщение
#4
|
|
Demcheg,
Он выводит по порядку нахождения в тексте. Если идет так: h1-h2-h2-h3-h3-h1-h2 и.т.д. То получиться, каждой строке в содержании подставляется класс list-h1,list-h2,list-h3 (для h1,h2 и h3 соотвественно), применить к ним нужные стили и будет древовидный. -------------------- Wordpress, HostCMS, DataLife engine, Shop-Script... Портфолио (beta) |
|
|
Scorpion71 |
11.1.2015, 1:03;
Ответить: Scorpion71
Сообщение
#5
|
|
Alex_RD, спасибо за скрипт, а как можно вручную так прописывать в статье? Просто по способу что ты дал выводит содержание в самом начале статьи, а нужно чтобы после первого абзаца.
|
|
|
Alex_RD |
11.1.2015, 7:51;
Ответить: Alex_RD
Сообщение
#6
|
|
Scorpion71
Код {full-story} на Код <div id="the_content">{full-story}</div> <script> $(document).ready(function(){ $("#the_content p:first").after('<div id="table_of_contents"><div class="toc-title">Содержание</div><ul></ul></div>'); $("#the_content h1, #the_content h2, #the_content h3, #the_content h4, #the_content h5").each(function(i) { var current = $(this); current.attr("id", "title" + i); $("#table_of_contents ul").append("<li class='list-" + current.prop("tagName") + "'><a id='chapter" + i + "' href='#title" + i + "' title='" + current.prop("tagName") + "'>" + current.html() + "</a></li>"); }); }); </script> #the_content p:first - после первого абзаца (<p>), можно заменить на что-то другое. Сообщение отредактировал Alex_RD - 11.1.2015, 7:52 -------------------- Wordpress, HostCMS, DataLife engine, Shop-Script... Портфолио (beta) |
|
|
Scorpion71 |
11.1.2015, 16:50;
Ответить: Scorpion71
Сообщение
#7
|
|
Alex_RD, спасибо ещё раз, последняя просьба - как при отсутствии тегов Н1-Н5 в статье убрать слово "Содержание"?
Сообщение отредактировал Scorpion71 - 11.1.2015, 16:52 |
|
|
Demcheg
|
Сообщение
#8
|
|
Alex_RD, спасибо за скрипт, а как можно вручную так прописывать в статье? Просто по способу что ты дал выводит содержание в самом начале статьи, а нужно чтобы после первого абзаца. Я попробовал - можно выводить с помощью баннеров. Код этот добавляешь как баннер (без fullstory, конечно же), а потом уже код баннера в нужное место в статье. Тогда и можешь сам управлять, куда добавлять, а куда - нет. |
|
|
Scorpion71 |
15.1.2015, 15:27;
Ответить: Scorpion71
Сообщение
#9
|
|
Я попробовал - можно выводить с помощью баннеров. Код этот добавляешь как баннер (без fullstory, конечно же), а потом уже код баннера в нужное место в статье. Тогда и можешь сам управлять, куда добавлять, а куда - нет. Спасибо, это тоже хороший способ, вот только для того что-бы разместить в старых статьях, их надо все редактировать, а это уже геморрой. Поэтому хотелось бы сделать слово "Содержание" невидимым при отсутствии тегов H1-5 в статье. |
|
|
Alex_RD |
15.1.2015, 15:54;
Ответить: Alex_RD
Сообщение
#10
|
|
|
Scorpion71,
Оберните код в if с проверкой на наличие h1,h2,h3 , т.е. чтобы получилось так: поменяйте на Код $(document).ready(function(){ if($("#the_content h1, #the_content h2, #the_content h3, #the_content h4, #the_content h5").length){// <-проверка, есть ли h1-h5 $("#the_content p:first").after('<div id="table_of_contents"><div class="toc-title">Содержание</div><ul></ul></div>'); $("#the_content h1, #the_content h2, #the_content h3, #the_content h4, #the_content h5").each(function(i) { var current = $(this); current.attr("id", "title" + i); $("#table_of_contents ul").append("<li class='list-" + current.prop("tagName") + "'><a id='chapter" + i + "' href='#title" + i + "' title='" + current.prop("tagName") + "'>" + current.html() + "</a></li>"); }); }// Закрываем if });
-------------------- Wordpress, HostCMS, DataLife engine, Shop-Script... Портфолио (beta) |
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Люблю творить! Статьи для вас Копирайтинг- моя жизнь! |
312 | Zoya83 | 190671 | Вчера, 7:51 автор: DimonX |
|
Готовые статьи по тематике кредитования в РФ (70 штук) от 10 рублей за статью |
3 | projectadmin | 1355 | 14.4.2024, 13:59 автор: projectadmin |
|
Куплю статьи с сайтами близкие к бухгалтерии - предлогайте Сделан сайт по бух услугам, ищу площадки под платное размщение статей |
2 | areainfo | 2844 | 30.3.2024, 5:03 автор: Llirik |
|
Готовые статьи различной тематики от 10р\1000 знаков |
3 | projectadmin | 1726 | 17.2.2024, 10:58 автор: projectadmin |
|
Ручной обмен, ввод/вывод электронных валют | ЮMoney, WMZ, Крипта, Приват, Монобанк | Низкие комиссии, минимальные суммы сделок быстро, удобно, по доступному курсу |
200 | Sostavitel | 98239 | 11.2.2024, 21:07 автор: Wolfhound |
Текстовая версия | Сейчас: 24.4.2024, 1:37 |