Простое управление несколькими черновиками в Jekyll

Несмотря на то, что мы являемся статичным веб-сайтом, мы также можем использовать плагин в Jekyll. Давайте продолжим наше обсуждение создания черновиков из предыдущего поста. Как вы можете видеть ранее – в предыдущем посте – мы создали черновики и поместили их в специальную папку с именем _drafts.

Затем, когда мы готовы его опубликовать, мы перемещаем их в папку _posts с правильным форматом именования.

Звучит легко, правда? это не должно быть проблемой, если вы управляете только 1 или 2 сообщениями. Но, когда у вас есть 5-10 проектов черновиков, изменение имени каждого файла и указание правильной даты вручную может быть проблематичным. Давайте посмотрим, как мы можем упростить рабочий процесс с помощью плагина Jekyll.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Начиная
Прежде чем идти дальше, давайте создадим новую папку с именем _plugins; эта папка необходима, так как Jekyll будет искать и запускать плагины внутри папки. Нам также нужно создать новый файл с именем publisher.rb; технически, вы можете свободно называть этот файл любым именем, которое вам нравится.

Мы будем использовать плагин Jekyll, созданный Джеффри Сэмбеллс, Этот плагин позаботится о хлопотах при публикации поста из черновика в Jekyll. Он будет правильно переименовывать файл вместе с датой. И это также будет указывать дату в разделе Front Front Matter.

Ниже приведен исходный код плагина, доступный из этого Гист страница, Скопируйте этот код ниже и вставьте его в файл publisher.rb, который мы только что создали.

модуль Jekyll
Класс PostPublisher <Генератор
безопасный ложный

def replace (путь к файлу, регулярное выражение, * аргументы и блок)
  content = File.read (filepath) .gsub (regexp, * args, & block)
  File.open (filepath, 'wb') {| file | file.write (content)}
конец

Def Generate (сайт)
  @files = Dir["_publish/*"]
  @ files.each_with_index {| f, i |
    now = DateTime.now.strftime ("% Y-% m-% d% H:% M:% S")
    заменить (f, / ^ дата: не опубликовано / mi) {| матч | "date: " "+ now +"  ""}
    now = Date.today.strftime ("% Y-% m-% d")
    File.rename (f, "_posts / # {now} - # {File.basename (f)}")
  }
конец

конец
конец

Если ваш Jekyll-сервер в данный момент работает, перезапустите его, чтобы плагин заработал.
Использование плагина
Чтобы использовать плагин, нам нужно создать новую папку с именем _publish. Мы переместим наши пост-проекты в эту папку, как только мы будем готовы их опубликовать. Однако, прежде чем сделать это, установите дату в предварительном проекте пост-проекта как неопубликованную, например


макет: пост
title: «Это мой второй пост»

дата: не опубликована

Теперь переместите черновик в папку _publish.

jekyll-plugin /

Как уже упоминалось, Jekyll автоматически переместит папку в _posts, а также установит дату публикации, а затем опубликует сообщение для вас.

Последняя мысль

Мы видели, что Jekyll расширяемый с помощью плагина. В этом посте, например, мы использовали один, чтобы упростить процесс публикации черновика. Вы можете найти больше плагинов Jekyll на этой странице: Доступные плагины,

Теперь, когда мы узнали, как настроить Jekyll и опубликовать черновик поста. В следующем посте мы покажем вам, как публиковать блог Jekyll на онлайн-сервере через FTP. Следите за обновлениями!

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *