Jekyll:在Markdown文件中包含HTML部分内容

时间:2015-01-19 18:00:36

标签: html markdown jekyll partial

有没有办法使用Jekyll从Markdown文件中包含HTML部分?

示例:

档案index.md

---
layout: default
title: Home
---

This is a [Markdown](http://daringfireball.net/projects/markdown/) file.

{% include foobar.html %}

档案_includes/foobar.html

<ul>
    <li>Foo</li>
    <li>Bar</li>
</ul>

遗憾的是,这似乎不适用于我的情况。

为了完整性,以下是我的_config.yml文件的全部内容:

encoding: utf-8
markdown: kramdown
baseurl: 

2 个答案:

答案 0 :(得分:18)

html显示为纯文本的一个常见原因是html代码段缩进时至少有四个空格。

这导致jekyll将html解释为字面上显示的代码块。

(我知道这已经在评论中提到了,但我花了一段时间才发现并理解我遇到了完全相同的问题)

答案 1 :(得分:1)

如果您提到的.md文件位于_posts中,并且布局类型为post,则可以使用markdown =“ 0”或“ 1”将相关零件设置为Markdown或HTML,因为您已将markdown配置为kramdown。尝试以下代码:

---
layout: post
title: Home
---

# Markdown part

This is a [Markdown](http://daringfireball.net/projects/markdown/) file.

<section id="categories" markdown="1">

A list of categories:

- foo
- bar

</section>

<div id="html" markdown="0">
<h1>HTML part</h1>

  <ul>
    <li>Foo</li>
    <li>Bar</li>
  </ul>

</div>

如果您提到的.md文件位于_includes_layoutspage中,则可以直接使用代码或将布局类型更改为{{1} }:

page

在此处查看示例:https://raw.githubusercontent.com/plusjade/jekyll-bootstrap/master/index.md

只是享受。