if-statement - Github Pages:在 index.html 中添加 if 条件
问题描述
我在 Github Pages 上使用Jekyll Now创建了一个博客
默认的 Index.html 如下所示
---
layout: default
---
<div class="posts">
{% for post in site.posts %}
<article class="post">
<h2><a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a></h2>
<div class="entry">
{{ post.excerpt }}
</div>
<a href="{{ site.baseurl }}{{ post.url }}" class="read-more">Read More</a>
</article>
{% endfor %}
</div>
这将创建一个登录页面,您在 _posts 目录中创建的所有帖子的标题都将显示并带有链接。
查看{% for ... %}
&&{% endfor %}
最终的静态 HTML,似乎在构建页面时,for 标签实际上是迭代的,并且最终的 HTML 包含一个实际标题列表。
我想更改此设置,以便未列出所有帖子。我不想列出任何标题包含字符串“BEINGWRITTEN”的帖子
我试过像
{% for post in site.posts %}
{% if (post.title.indexOf('BEINGWRITTEN') == -1) %}
<article class="post">
...
</article>
{% endif %}
{% endfor %}
还尝试使用包含而不是 indexOf,这也不起作用。在这两种情况下,我都没有在登录页面上看到任何链接的帖子。
我该怎么做呢?
解决方案
我通过在我不想包含的页面的前面添加一个类别来做到这一点。
即类别:noshow
然后将 index.html 更改为
{% for post in site.posts %}
{% unless post.category == "noshow" %}
.....
{%endunless}
{%endfor}
推荐阅读
- javascript - 如何在 Mozilla Firefox 浏览器中加载“chrome-extension”?
- sql - 我如何编写一个查询来计算两个表中一个条件中一个 id 的行数?
- node.js - 模拟测试不会失败
- erlang - 用系统命令替换 Erlang shell
- javascript - PWA 中 Android 后退按钮的自定义事件
- c++ - 无法在文件 C++ 上写入字符串
- mysql - 使用 NodeJs 查询我的 mySQL 时出现“无法设置未定义的属性‘长度’”错误
- python - 将非转义转义字符添加到 python bytearray
- html - 滚动条未在 HTML 文档的右侧显示完整内容
- jquery - 如何隐藏下拉列表中除最大值之外的所有选项?