【问题标题】:Jekyll posts aren't using layout accordinglyJekyll 帖子没有相应地使用布局
【发布时间】:2020-10-19 01:05:13
【问题描述】:

如“specifying layout for html posts in jekyll”中所述,Jekyll _posts 来自其_layouts 时的行为应该与任何其他页面一样,但它现在对我没有这样做。

我正在开发 this static site 以托管在 Github 页面中,其他一切正常,但我的帖子不是。

我还检查了“Jekyll post not generated”中关于 Jekyll _posts 的错误,但问题没有解决。

# _posts/2020-06-27-how-I-long-for-summer.md
---
layout: post
title:  How I long for Summer
cover: /assets/img/jhonny.jpg
date: 2020-06-27 20:56:28 -0300
categories: text
---
# _layouts/post.html
---
layout: default
---
# layouts/default.html
<!DOCTYPE html>
<html lang="en">

    {% include head.html %}

    <body>
        {% include navbar.html %}

        {{ content }}

        {%- include footer.html -%}
    </body>
</html>

因此,即使所有常规页面都相应地使用default 布局,我的帖子页面也被渲染为原始页面,就好像我没有向它们声明任何布局一样。

我正在使用minima 主题,但实际上我期待它没有任何效果,因为我覆盖了post 布局。

# _config.yml
markdown: kramdown
theme: minima
permalink: :year/:month/:day/:title

我尽力了。有人知道我做错了什么吗?

【问题讨论】:

标签: html ruby jekyll github-pages static-site


【解决方案1】:

您的所有 CSS 都使用相对路径而不是绝对路径,因此无法正确获取。

在您的各种源代码文件中(head.htmlfooter.html 等)。

assets/js/main.min.js
assets/js/theme.js
assets/css/main.min.css
assets/css/theme.css
assets/main.css // not available

应该是:

/assets/js/main.min.js
/assets/js/theme.js
/assets/css/main.min.css
/assets/css/theme.css
/assets/main.css // not available

另一种解决方案是使用 Liquid 的relative_url 过滤器:

https://github.com/jekyll/minima/blob/master/_includes/head.html#L6

https://jekyllrb.com/docs/liquid/filters/

【讨论】:

  • 非常感谢您的关注,阿什利!我有时会四舍五入,不会这么快自己解决
  • @artu-hnrq 没问题 ;)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-13
  • 2012-05-08
  • 2013-09-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多