Frontmatter и как с ним дружить

"У меня нет особых талантов. Я просто безумно любопытен." А. Эйнштейн
В Eleventy, с помощью которого написан этот сайт, есть много инструментов, которые можно применять с неплохой эффективностью, а можно просто игнорировать и писать как угодно, всё равно всё будет работать нормально. Но есть момент, который меня поначалу раздражал, это необходимая для корректной работы сайта информация, например такая:
---layout: article.njk title:"О полуавтоматическом написании постов"description:"скрипты для публикации постов"date:2025-10-23tags:- статьи - веб-разработка - eleventy recommended:2# Средний приоритетreading_time:3# Время чтения в минутыpreview: preview.jpg ---… и это не сильно, но напрягает. Просто неудобно, когда наверняка можно упростить и тиражировать способ написания подобных типов meta-данных. Забивать каждый раз в новую статью этот блок кода… ну такое себе удовольствие.
Некоторые люди становятся умными не потому, что они такими родились, а потому что они просто ленивые и их личная лень заставляет их задумываться иногда о простых способах решения рутинных задач, чтобы впредь на них не отвлекаться. А поскольку часто ленивые люди бывают весьма великодушны, то они придумали скрипт и поделились с другими ленивыми людьми, например со мной, а я делюсь с вами.
Настройка скрипта
В отдельной папочке scripts в корне вашего проекта создайте файлик с вашим шаблоном новых статей new-article.js, а в вашем package.json пропишите:
"scripts":{"build":"eleventy","start":"eleventy --serve","dev":"eleventy --serve --watch","clean":"rimraf _site","new":"node scripts/new-article.js","new:post":"node scripts/new-article.js","fresh":"npm run clean && npm run dev"}У меня тут кое-что лишнее, но это просто пример. Обратите внимание на строки:
"new":"node scripts/new-article.js","new:post":"node scripts/new-article.js"Теперь, как только вам приспичит выдать миру очередной нетленный перл, вам будет достаточно запустить в терминале команду:
npm run new # или npm run new:postА тут слишком длинный скрипт, ради которго всё и затевалось - Скриптик! Пользуйтесь на здоровье.