Вывод содержания статьи


Этот модуль позволяет в автоматическом режиме формировать содержание статьи на основании использованных в статье заголовков. Формируемый html код при необходимости в принципе достаточно легко можно изменить в самом файле модуля. Примеры реализации на скриншотах в этой статье. На первом скриншоте пример по образу Википедии.
 
Пример с большим количеством заголовков и подзаголовков:
Вывод содержания статьи


Важно: следует внимательно следить за иерархией используемых тегов. Например, если первым будет стоять тег H3, а ниже будет H2, то он и все что ниже отображаться не будет.

Установка:
1. Распаковать содержимое архива в папку engine/mods/ .

2. Открыть engine/modules/show.full.php и найти:
		$tpl->set( '{full-story}', $row['full_story'] );

Добавить выше:
		include_once ENGINE_DIR . '/mods/headers_menu.php';

3. В шаблоне fullstory.tpl, в нужное место добавить:
[hmenu]<div class="contents">
	<h2>Содержание:</h2>
	<ul class="h-menu">{hmenu}</ul>
</div>
<script>
$(document).on('click', 'a[href*=hmenu-]', function(e){
	e.preventDefault();
	var id = $(this).attr('href');
	var top = $(id).offset().top - 90;
	$('html,body').animate({scrollTop:top + 'px'});
})
</script>
[/hmenu]

Готово!

Обратите внимание на JS код. С его помощью можно сделать отступ сверху, если используется плавающее верхнее меню, ну и небольшая анимация прокрутки. Так же JS код можно и даже следует вынести в отдельный подключенный к шаблону JS файл.

Скачать: файл могут только зарегистрированные пользователи.
 
Версия DLE: 12.х
Автор: Sander
Источник:
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
  • Рейтинг@Mail.ru
  • Яндекс.Метрика