【问题标题】:Adding metadata specific to each post in Jekyll在 Jekyll 中添加特定于每个帖子的元数据
【发布时间】:2018-10-09 06:47:09
【问题描述】:

我已经建立了一个博客,并希望在博客中的每篇文章中添加特定的元数据。

在每一页的开头我都有以下代码(简化以明确我要问的问题)。

---
layout: default
title:  "Title"
date:   2018-04-19
---

这会在 _layout 中拉入我的 default.html

默认.html

<!DOCTYPE html>
<html lang="en-us">
  {% include head.html %}
  <body>
  </body>
</html>

head.html 是我网站的头部部分。在那里,我希望在每一页上都有一些通用的标题数据。 我想问的是,使用 Jekyll 和 Liquid 向每个帖子添加页面/帖子特定元数据的好方法是什么(除了我已经为整个网站拥有的一般元数据)?我应该在流程中的哪个位置添加此页面/发布特定元数据?

谢谢!

【问题讨论】:

  • &lt;meta&gt; 可以在&lt;head&gt; 内的任何位置工作。
  • @AndreiGheorghiu。谢谢你的评论,我明白了。我会尽量说得更清楚。我有适用于该网站的元数据。但是对于我创建的每个帖子,我都想制作额外的元数据,以帮助搜索引擎看到帖子是关于特定主题的。
  • 您可能还想看看this。
  • @AndreiGheorghiu 明白了。我不是在问搜索引擎如何处理这个/或工作......相反,我在问如何使用 Jekyll / Liquid 来获取每个帖子的帖子特定元数据。这对我来说似乎是一个有效的编码问题。感谢您提供链接,浏览它。
  • 这是开箱即用的 jekyll :jekyll seo

标签: html metadata jekyll liquid head


【解决方案1】:

所以做了一些更多的网络搜索,并能够找到以下内容。 (因此,以下代码 sn-ps 归功于本网站。)这是对我最初问题的直接答案,但 Andrei 确实提供了一个很好的观点(见下文)。

https://ehelion.com/blog/2018/02/24/adding-meta-keywords-jekyll.html

将此添加到head.html:

{% if page.keywords %}
<meta name="keywords" content="{{ page.keywords | join: ', ' | escape }}">
{% endif %}

将此添加到 YAML 字体问题:

---
layout: post
title:  "Best blog post ever made"
date:   2029-01-01 16:20:00
keywords:
  - some keyword
  - another keyword
  - get rich quick
---

还要感谢 Andrei Gheorghiu 提供该链接,因为它说明搜索引擎不再真正关心关键字标签。相反,焦点已转移到元描述上。但是可以应用相同类型的代码。只需将 if page.keywords 换成 if page.description 并在 YAML 字体中添加描述即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-10
    • 1970-01-01
    • 2014-07-13
    • 2017-05-13
    • 1970-01-01
    • 2016-04-29
    • 2015-07-24
    • 1970-01-01
    相关资源
    最近更新 更多