Jekyll プラグインでマークダウン ブロックを定義する方法は次のとおりです。
module Jekyll
class MarkdownBlock < Liquid::Block
def initialize(tag_name, text, tokens)
super
end
require "kramdown"
def render(context)
content = super
"#{Kramdown::Document.new(content).to_html}"
end
end
end
Liquid::Template.register_tag('markdown', Jekyll::MarkdownBlock)
(このスニペットをプラグインとしてインストールするには、ソース サイトのルートのディレクトリの*.rb
下にあるファイルに配置します)_plugins
次に、次のように使用します。
{% markdown %}
[Stack Overflow](http://www.stackoverflow.com)
{% endmarkdown %}
編集: より良い解決策については、@Cristian の回答を参照してください。Kramdown を使用している場合 (Jekyll を使用しているため、おそらくそうです)、その機能を使用して、属性div
を持つ 内のマークダウンをレンダリングできます。markdown="1"