Jekyllを使って記事作成時間を自動生成し、簡単にブログ更新頻度を上げる方法とは?

当你准备使用ジキル来撰写文章时,你肯定不愿意烦心地手动创建文件、修改文件后缀名,再在文本开头添加yml语法了吧?

それであなたはこう思うかもしれませんジキルの新着記事これらすべてを単純化するには、スクリプトを書くのが論理的ではないでしょうか?

プログラマは皆、ただ怠けるためにコードを書いているのではないでしょうか?このとき、Rake が役に立ちます。

Jekyll を使用して記事を自動生成するにはどうすればよいですか?

Jekyll の md タイトルと yaml 形式に対する厳格な要件を考慮すると、毎回手動で yaml を記述するのは面倒すぎるため、スクリプトを使用してコンテンツを出力するのが良い選択です。

Jekyllを使って記事作成時間を自動生成し、簡単にブログ更新頻度を上げる方法とは?

まず、rake がインストールされているかどうかを確認します。

gem list rake

インストールされていない場合は、インストールします。

gem install rake

次に、Rakefile を作成し、jekyll のルート ディレクトリに配置します。

次に、次のコードを Rakefile にコピーします。

require 'rake'
require 'yaml'

SOURCE = "."
CONFIG = {
'posts' => File.join(SOURCE, "_posts"),
'post_ext' => "md",
}

# Usage: rake post title="A Title"
desc "Begin a new post in #{CONFIG['posts']}"
task :post do
abort("rake aborted: '#{CONFIG['posts']}' directory not found.") unless FileTest.directory?(CONFIG['posts'])
title = ENV["title"] || "new-post"
slug = title.downcase.strip.gsub(' ', '-').gsub(/[^\w-]/, '')
filename = File.join(CONFIG['posts'], "#{Time.now.strftime('%Y-%m-%d')}-#{slug}.#{CONFIG['post_ext']}")
if File.exist?(filename)
abort("rake aborted!") if ask("#{filename} already exists. Do you want to overwrite?", ['y', 'n']) == 'n'
end

puts "Creating new post: #{filename}"
open(filename, 'w') do |post|
post.puts "---"
post.puts "layout: post"
post.puts "title: \"#{title.gsub(/-/,' ')}\""
post.puts "category: "
post.puts "tags: []"
post.puts "---"
end
end # task :post
  • これは単なる簡易版です。

最後に、コマンドラインに次のように入力します。

rake post title="article name"

シューッという音とともに、あなたはそこにいます _post フォルダー内に、次のファイル名の新しい記事がありました。年-月-日-文章标题.md

Hope Chen Weiliang ブログ ( https://www.chenweiliang.com/ ) 分享的《如何利用Jekyll自动生成文章创建时间,轻松提升博客更新频率?》,对您有帮助。

この記事のリンクを共有することを歓迎します。https://www.chenweiliang.com/cwl-31597.html

Chen WeiliangのブログのTelegramチャンネルへようこそ。最新のアップデートを入手できます!

🔔 貴重な「ChatGPT コンテンツ マーケティング AI ツール使用ガイド」をチャンネル トップ ディレクトリでいち早く入手してください! 🌟
📚 このガイドには非常に価値のある内容が含まれています。🌟これはめったにない機会です、お見逃しなく! ⏰⌛💨
気に入ったらシェア&いいね!
あなたの共有といいねは、私たちの継続的な動機です!

 

发表评论

あなたのメールアドレスが公開されることはありません。 必須アイテム * 标注

トップにスクロールします