Генератор сводки на веб-странице

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

Для каждого заголовка он генерирует идентификатор или учитывает любой существующий идентификатор, затем из заголовков строит иерархическое меню и размещает ссылки в меню на разделах страницы.

Структуру страницы можно изменить позже и автоматически обновить меню.

Использование

Синтаксис скриптола:

solp automenu [-hn] [path]filename

Синтаксис PHP

php automenu.php [-hn] [path]filename

Опция соответствует уровню иерархии, который необходимо учитывать при построении меню. По умолчанию самый глубокий уровень - h3, и можно указать от h2 до h6.

Настройка

Меню представлено в наборе полей с подписью «Summary». Эту подпись по умолчанию можно изменить, изменив значение переменной legend в исходном коде :

text legend = "Summary"

В коде PHP:

$legend="Summary"; 

Чтобы пойти дальше, например, заменив набор полей слоем или связав с ним атрибуты, потребуется отредактировать код в основной функции.

Как это работает

Создание меню включает в себя следующие шаги:

  1. Отсканируйте страницу для идентификации ранее использованных номеров, чтобы не использовать текущий номер для генерации идентификатора.
  2. Идентификатор генерируется и добавляется к каждому заголовку.
  3. Заголовки извлекаются из страницы и помещаются в таблицу.
  4. Из этой таблицы скрипт строит иерархическое меню с отступами и ссылками на текстовые разделы.
  5. Это меню размещается после тега <h1>. Затем его можно вручную разместить в любом месте страницы.
  6. Во время обновления меню изменяется в том же месте.

Условия и ограничения

Для достижения наилучших результатов страница должна быть правильно сформирована с иерархией заголовков (h1, h2, h3 и т. д.), которая соответствует их предназначению.
Результат будет неопределенным, если эти теги используются во врезках или для целей, отличных от семантического структурирования, что является практикой, которую не следует рекомендовать.

Идентификаторы должны иметь имя тега в качестве префикса. Например, h221, h322 и т.д. Это важно для правильного отступа. Эти имена автоматически генерируются программным обеспечением, если идентификатор не существует .

Лицензия и кредиты

Сценарий, написанный Денисом Сюро, лицензирован под лицензией GPL 3.0.

Сценарий использует синтаксический анализатор Simple HTML Хосе Солорзано (https://sourceforge.net/projects/php-html/). Этот синтаксический анализатор лицензирован под лицензией MIT.

Скачать

Скачать здесь: