最近,我决定在Github Pages上开始我的博客。我分叉 Jekyll-Now 并将代码拉到我当地的环境中。
现在我正在运行jekyll serve
,但它没有阅读_posts文件夹中的帖子!。
似乎无法读取site.posts
中的index.html
变量。如果我输出变量或将其检查为:{{ site.posts | inspect }}
则为空。
帖子名称的格式正确YYYY-MM-DD-TITLE.md
如果我在jekyll serve
文件夹中运行_posts
,那么我会找到一个IndexOf
页面,其中列出的所有帖子都没有任何问题。
_config.yml
的内容:
# Name of your site (displayed in the header)
name: My name
# Short bio or description (displayed in the header)
description: Blog on various topics
# URL of your avatar or profile pic (you could use your GitHub profile pic)
# avatar: https://raw.githubusercontent.com/barryclark/jekyll-now/master/images/jekyll-logo.png
# Includes an icon in the footer for each username you enter
footer-links:
github: motleis/blog
baseurl: ""
permalink: /:title/
# The release of Jekyll Now that you're using
version: v3.4.0
# Jekyll 3 now only supports Kramdown for Markdown
kramdown:
# Use GitHub flavored markdown, including triple backtick fenced code blocks
input: GFM
# Jekyll 3 and GitHub Pages now only support rouge for syntax highlighting
syntax_highlighter: rouge
syntax_highlighter_opts:
# Use existing pygments syntax highlighting css
css_class: 'highlight'
# Set the Sass partials directory, as we're using @imports
sass:
style: :expanded # You might prefer to minify using :compressed
# Use the following plug-ins
gems:
- jekyll-sitemap # Create a sitemap using the official Jekyll sitemap gem
- jekyll-feed # Create an Atom feed using the official Jekyll feed gem
# Exclude these files from your production _site
exclude:
- Gemfile
- Gemfile.lock
- LICENSE
- README.md
- CNAME
在_posts下:我只有简单的示例文件: 2014-3-3-Hello-World.md
---
layout: post
title: You're up and running!
---
Just a single line that should be displayed!
这里有index.html
的内容,其中应列出帖子:
site.posts : {{ site.posts }}
My posts:
<ul>
{% for post in site.posts %}
<li>
<a href="{{ post.url }}">{{ post.title }}</a>
{{ post.excerpt }}
</li>
{% endfor %}
</ul>
结果是:
site.posts :
My Posts:
正如您所见,site.posts为空!
您对调试此问题有何建议?
我正在运行jeykll-3.4.0
答案 0 :(得分:3)
更新的答案:
检查您的帖子是否为YYYY-MM-DD-title.MARKUP,即2017- 0 1- 0 1-title.md样式,0为填充。
在Jekyll的文档页面上的"Writing Posts"中的“创建帖子文件”下:
要创建新帖子,您只需在_posts目录中创建一个文件即可。如何命名此文件夹中的文件非常重要。 Jekyll要求根据以下格式命名博客文章:
YEAR-MONTH-DAY-title.MARKUP
如果YEAR是一个四位数字,MONTH和DAY都是两位数字,MARKUP是表示文件中使用的格式的文件扩展名。例如,以下是有效的帖子文件名的示例:
2011-12-31-new-years-eve-is-awesome.md
2012-09-12-how-to-write-a-blog.md
前答案:
您的_posts文件夹是否位于您网站的根目录中?
我的主要建议是创建一个布局(在layouts文件夹中)专门用于显示索引(因此,制作一个普通的网页,并复制并粘贴index.md文件的当前非前端内容)。我的理解是,如果它不是Liquid或Markdown,您的代码将按原样显示,而不会被读取/处理以构建网站。即使你的index.md页面有一个完全空的下半部分,根据我的理解,它应该显示你的帖子。