jekyll 相关问题

Jekyll是一个用Ruby编写的支持博客的静态站点生成器。在提出问题之前,请参阅https://talk.jekyllrb.com。

jekyll 中的 Liquid 变量包含参数

我在 _includes 中有一个 jekyll 部分,它在其内容周围包裹着一个彩色的 div。部分(callout.html)如下所示: {{ 包含.内容 }} &... 我在 _includes 中有一个 jekyll 部分,它在其内容周围包裹着一个彩色的 div。部分(callout.html)看起来像这样: <div markdown="1" class="callout"> {{ include.content }} </div> 我这样称呼它: test.md 但是,这会导致 Liquid 抛出错误: {% include callout.html content="Content to be filled with a URL: {{ site.baseurl }}/img/test.png" %} 我相信这个问题是由于我在 Liquid Exception: Invalid syntax for include tag: ... " Valid syntax: {% include file.ext param='value' param2='value' %} in bundler: failed to load command: jekyll (/usr/local/lib/ruby/gems/2.6.0/bin/jekyll) 参数中包含了 {{ site.baseurl }} 造成的。 我怎样才能绕过这个限制? https://jekyllrb.com/docs/includes/#passing-parameter-variables-to-includes 我在发布后不久就在 Jekyll 文档中找到了答案。 content参数的值应在使用content传递给包含之前单独存储为变量。对于上面的例子: capture 有一些例外情况没有得到很好的记录。 使用 {% capture callout_content %} Content to be filled with a URL: {{ site.baseurl }}/img/test.png {% endcapture %} {% include callout.html content=callout_content %} ,可以传递参数,例如要包含的文件名和要包含的任何变量(在本例中为“内容”)作为参考:{% include %}关于你列出的例子,我会如何做: {% include {{ file }} content='...' url='...' %} 当然在 callout.html 包含文件中: {% assign image_url = site.baseurl | append: '/img/test.png' | strip %} {% include callout.html text='Content to be filled with a URL:' url=image_url %} 不确定它是否更干净/更好/更快,但我不喜欢在内容中混合/匹配文本和变量,这只是感觉很恶心。 增加更多的复杂性和进一步的定制...可能有点偏离主题,但它确实展示了包含的真正力量。 我确实想强调,通过包含和传递变量作为页面或前言或模板上人类输入文本的引用,您应该始终考虑使文本“安全”: <div class="callout"> {{ include.text }} {{ include.url }} </div> 、| strip等都是你的朋友:| uri_escape 在这种情况下,我特别没有在文本变量中包含 {% if page.callout.enabled == true %} {% assign file = 'callout.html' %} {% assign text = 'Content to be filled with a URL: ' %} {% assign image_url = site.baseurl | append: page.image | uri_escape | strip %} {% include {{ file }} text=text image_url=image_url %} {% elsif page.comments.enabled == true %} {% assign file = 'components/comments/disqus.html' %} {% include {{ file }} %} {% endif %} ,因为它会删除尾随空格。更喜欢在模板包含的文件中保留空格,而不是以这种方式传递的变量 - 它们之后不可能进行比较和/或处理,但是当将它们分离成单独的变量然后传递到包含中时,您可以。

回答 2 投票 0

不带日期的 Jekyll 文件名

我想使用 Jekyll 和 GitHub Pages 构建文档网站。问题是 Jekyll 只接受 _posts 下具有精确模式的文件名,如 YYYY-MM-DD-your-title-is-here.md。 我怎样才能发帖

回答 7 投票 0

如何引用 Docusaurus 根文件夹之外的文件

我和我的团队正在寻求实现一个文档系统,该系统允许工程师将 markdown 文件放入每个服务根目录的指定文件夹中。因为我们是在星期一...

回答 1 投票 0

转换错误:Jekyll::Converters::PostCss 在转换 'assets/css/main.css' 时遇到错误

我正在按照这些教程在 github 页面上托管 jekyll 网站 Jekyll 和 Tailwind 样板 https://github.com/mzrnsh/jekyllwind 部署到 github 页面 https://jekyll.ohsostatic.com/devop...

回答 1 投票 0

捆绑的 So-Simple Jekyll 主题未通过 jekyll 服务在本地主机中运行?

我正在为我女朋友的生日制作一个网站,因为那天我不能和她在一起。 我正在为该网站使用 So-Simple Jekyll 主题,但它无法正常工作,并且无法在本地主机中打开。 ...

回答 1 投票 0

为什么 jekyll-archives 不能在 Travis CI 的 Github 页面上工作?

我正在使用 Travis 在 Github 页面上部署。我还在我的项目中使用 jekyll-archives。我的设置在本地运行得很好,但 github 页面上没有生成存档页面。我也用过jek...

回答 1 投票 0

bundle exec jekyll 服务:无法加载此类文件

我正在尝试为 Github Page/Jekyll 站点做出贡献,并希望能够在本地可视化更改,但是当我运行 bundle exec jekyllserve 但我得到以下输出: 捆绑程序:无法加载命令:

回答 8 投票 0

`$bundle install`抛出错误:bash:/usr/local/bin/bundle:/usr/bin/ruby2.7:错误的解释器:没有这样的文件或目录

我最近使用命令 sudo snap install ruby --classic 在系统中安装了 ruby。 $ 哪个红宝石 /snap/bin/红宝石 $ 哪个捆绑包 /usr/local/bin/捆绑包 遵循另一个人的建议

回答 1 投票 0

jekyll 中的热重载不起作用

我已经在 Mint 17 (ubuntu 14.4) 上安装了 jekyll 3.1.6 红宝石 2.2 + 蟒蛇 2.7 我的浏览器是 Chromium 和 Firefox 我想我已经尝试了在互联网上可以找到的所有技巧,但它仍然不会......

回答 2 投票 0

GitHub Pages 部署的“构建”阶段出现错误

这是我第一次涉足编程,我正在尝试部署我的 GitHub Pages 站点。我在尝试自己解决此问题时感到非常失落。有人有建议吗?我收到了

回答 1 投票 0

如何让公告横幅Cookie在特定时间后过期? [已关闭]

我想让我的公告横幅在 14 天后过期。我必须如何更改以下代码才能使其工作? // 公告横幅 var 按钮 = document.querySelector(&...

回答 1 投票 0

是什么原因导致ruby无效选项-1(-h将显示有效选项)(运行时错误)

我是红宝石新手。我尝试在本地运行此存储库,我已经完成了所有必要的要求(安装了 ruby-dev、bundler),但在运行“bundle exec jekyll liveserve”时总是出现错误...

回答 1 投票 0

如何将 Jekyll 中的 page.url 更改为输出文件的实际页面?

我有一个 Jekyll 博客需要修复。因为我在 _includes/head.html 中有这段代码: 我有一个 Jekyll 博客需要修复。因为我在_includes/head.html中有这段代码: <link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}"/> 问题是,对于文件 page.url 和 /cookies,/articles 是 /cookies.md 和 /articles.md,即使输出是 /cookies.html 和 /articles.html。 如何更改 page.url 以获得输出文件的实际路径? 为什么我没有得到与输出一样的 html 文件? 我正在检查我的 _config.yaml,但没有看到任何相关内容。 这是一个旧博客,我不想投入时间,否则我会在Eleventy中重写它。 您可以使用永久链接更改 URL: --- permalink: /cookies.html ---

回答 1 投票 0

SCSS 更改似乎没有在 Jekyll 站点中生效?

我有一个用 Jekyll 构建的 Github Pages 站点。我正在使用 Minima Jekyll 主题。 我正在尝试将自定义样式应用于我的类,但无论我输入什么,它都不会生效。所有 SCSS 风格...

回答 1 投票 0

如何从我的 jekyll github 页面链接中删除这个 %20?

我想我已经将范围缩小到 _site/header.html 中的这一行 我试过了

回答 2 投票 0

Jekyll 和 SEO 友好的分页

当我使用免费或付费工具(例如 Screaming Frog SEO Spider)审核网站时,我遇到以下问题: 分页:分页 URL 不在锚标记中 分页:顺序错误 我正在使用 Jek...

回答 1 投票 0

在 GitHub Pages 上包含图像的正确方法是什么?

免责声明:我搜索过SO,发现了类似的问题(例如:URL),主要建议注意名称的大小写差异,但他们没有解决我的问题。 前段时间我

回答 2 投票 0

限制 Jekyll 标签显示在主页上

我想在我的主页上显示最新博客文章中的最新标签(或将其限制为 6 个)。 到目前为止,我的代码显示了每个标签: {% 为 po... 我想在我的主页上显示最新博客文章中的最新标签(或将其限制为 6 个)。 到目前为止,我的代码显示了每个标签: <div class="archive-tags"> {% for post in site.posts %} {% if post.tags != empty %} {% for tag in post.tags %} <a href="{{site.baseurl}}/tags/#{{tag|slugify}}">{{ tag }}</a> {% endfor %} {% endif %} {% endfor %} </div> 我想知道使用什么标记来限制此操作或仅显示最新的博客文章标签。 感谢您的阅读! 我正在寻找的答案很简单,只需添加limit: 1。 修改后的工作代码现在是: <div class="archive-tags"> {% for post in site.posts limit: 1 %} {% if post.tags != empty %} {% for tag in post.tags %} <a href="{{site.baseurl}}/tags/#{{tag|slugify}}">{{ tag }}</a> {% endfor %} {% endif %} {% endfor %}

回答 1 投票 0

在 Jekyll post_write 上调用 python 插件

这感觉像是一个 Jekyll 问题,但可能只是一个 Ruby 问题...... 1 背景 hooks.feature 有 Jekyll::Hooks.register 用法的有用示例,但旨在挂钩 jekyll

回答 2 投票 0

Jekyll 分页:确保 Google 从一个页面抓取到另一个页面,并且 PageRank 在页面之间传递

当我使用免费或付费工具(例如 Screaming Frog SEO Spider)审核网站时,我收到以下错误: 分页:分页 URL 不在锚标记中 分页:顺序错误 我该如何解决...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.