Ск О полуавтоматическом написании постов | Федотов С.

О полуавтоматическом написании постов

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

А тут слишком длинный скрипт, ради которго всё и затевалось - Скриптик! Пользуйтесь на здоровье.