杰基尔 - 将降价内容分成几部分?

时间:2017-05-04 16:52:45

标签: html jekyll liquid

我正在和杰基尔建立一个博客。对于我的设计,我想在页面的一侧显示部分帖子内容,并在页面的另一侧显示其余内容。我尝试使用Jekyll post excerpt函数,哪种工作但它仍然显示帖子摘录与帖子的主要内容。所以,它出现了两次,这不是我想要的。

所以,我基本上想把帖子内容分成两个部分。这可能吗?

Markdown示例

---
---

Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
Cras facilisis, ligula id sodales dignissim, ligula felis maximus metus, 
nec malesuada odio ipsum ut mi. 
<!--excerpt -->

Quisque suscipit condimentum nisi sed ornare. 
Ut dictum id massa et finibus. 
Donec ut consequat massa. Aenean eget mauris quam. Sed ornare auctor sapien fringilla condimentum. 

HTML

    <div class="excerpt">
              <h3>Recipe</h3>
              {{ page.excerpt }}
            </div>
          </row>
        </div>
      </div>
      <div class="col-lg-6 col-sm-12 right split-cols">
          <div class="content">
            <header class="major">
            <h2>{{ page.title }}</h2>
            </header>
           {{ content }}
         </div>

1 个答案:

答案 0 :(得分:1)

是的,这可能不是excerpt变量的预期用途,但可以使用Liquid过滤器实现,在这种情况下是remove_first过滤器。

  

仅从字符串中删除第一次出现的子字符串。

所以我们有页面摘录:{{ page.excerpt }}

然后在另一部分中,其余内容过滤了第一段:{{ content|remove_first: page.excerpt }}

布局如下:

<div class="excerpt">
    <h3>Recipe</h3>
    {{ page.excerpt }}
</div>
          </row>
  </div>
  </div>
  <div class="col-lg-6 col-sm-12 right split-cols">
      <div class="content">
          <header class="major">
              <h2>{{ page.title }}</h2>
          </header>
          {{content|remove_first: page.excerpt}}
      </div>

你应该考虑将摘录作为变量放在前面的事情中,它的用法会更简单。