首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Jekyll中,如何在另一个集合的布局中使用变量的子类别?

在Jekyll中,可以通过使用Liquid模板语言的过滤器和循环来在另一个集合的布局中使用变量的子类别。

首先,确保你已经在Jekyll项目中创建了两个集合,例如"posts"和"categories"。在"_config.yml"文件中,你需要添加以下配置:

代码语言:yaml
复制
collections:
  posts:
    output: true
  categories:
    output: true

接下来,在你的"posts"集合中的每个文件的Front Matter中,添加一个"categories"字段来指定该文章所属的类别。例如:

代码语言:yaml
复制
---
title: "文章标题"
categories:
  - 技术
  - 编程
---

然后,在你的布局文件中,可以使用Liquid模板语言的过滤器和循环来获取特定文章的子类别。例如,假设你的布局文件是"_layouts/post.html",你可以使用以下代码来获取当前文章的子类别:

代码语言:liquid
复制
{% assign postCategories = page.categories %}
{% for category in site.categories %}
  {% if category[0] == postCategories[0] %}
    {% assign subcategories = category[1] %}
    {% for subcategory in subcategories %}
      {{ subcategory }}
    {% endfor %}
  {% endif %}
{% endfor %}

上述代码首先将当前文章的类别存储在"postCategories"变量中。然后,通过循环遍历"site.categories",找到与"postCategories"匹配的类别。一旦找到匹配的类别,就将其子类别存储在"subcategories"变量中,并通过循环遍历输出每个子类别。

这样,你就可以在另一个集合的布局中使用变量的子类别了。

关于Jekyll的更多信息和详细用法,请参考腾讯云的Jekyll产品介绍页面:Jekyll产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • PHP如何使用全局变量方法详解

    有很多方法能够使这些数据成为全局数据,其中最常用就是使用“global”关键字申明,稍后文章我们会具体讲解到。...开发过程,你可能会知道知道每一个全局变量,但大概一年之后,你可能会忘记其中至少一般全局变量,这个时候你会为自己使用那么多全局变量而懊悔不已。 那么如果我们不使用全局变量,我们该使用什么呢?...请求封装器 虽然我们注册器已经使“global”关键字完全多余了,我们代码还是存在一种类型全局变量:超级全局变量,比如变量$_POST,$_GET。...虽然这些变量都非常标准,而且在你使用也不会出什么问题,但是某些情况下,你可能同样需要使用注册器来封装它们。 一个简单解决方法就是写一个类来提供获取这些变量接口。...> 正如你看到,现在我们不再依靠任何全局变量了,而且我们完全让这些函数远离了全局变量。 结论 本文中,我们演示了如何从根本上移除代码全局变量,而相应用合适函数和变量来替代。

    7.3K100

    什么是泛型以及集合泛型使用

    大家好,又见面了,我是你们朋友全栈君。 什么是泛型? 泛型最常与集合使用,因为泛型最开始开始被加入Java就是为了解决集合向下转型一类问题。...如果我们有这样一个需求:定义一个描述类圆,要求圆数据类型是不确定,也就是声名属性时候,属性类型是不确定。比如描述类圆中有半径,要求半径可以用int,也可以用double。...集合泛型使用 List中使用泛型 我们创建集合使用来声明List集合只能保存Dog类对象 List dogs=new ArrayList(); 创建Dog类对象 Dog dog1...= new Dog(“101”,“来福”); 添加Dog对象到集合 dogs.add(dog1);//此时dogs集合只能存放Dog类对象 public class ListTest {...Dog类型 总结: 集合使用泛型目的就是为了解决向下转型问题,泛型具体化之后,集合只能存储与泛型具体化之后类型。

    2.1K20

    变量分析不同物种研究使用频率

    前几天看到一篇综述解读,来源于水生态健康: 微生物生态学变量分析 里面一个表感觉比较有意思:统计了100多年应用各种统计方法文章比例。...我搜索条件(数据库,文章类型)比原文还严格,但是得到文章数远远高于他结果。...但是PCA数量/比例最多这一规律是一致。而其他方法使用比例都很低。我也做了一下CA分析,结果如图。 原文中不同方法能分得比较开,细菌和微生物关键词会聚到一起。...而我结果不同物种类型分得很开,分析方法则比较集中,离细菌比较近。其中DCA,PCA,CCA,Mantel区分不开。看来不同物种分析方法差距还是比较大。...点分享 点点赞 点在看 一个环境工程专业却做生信分析深井冰博士,深受拖延症困扰。想给自己一点压力,争取能够不定期分享学到生信小技能,亦或看文献过程一些笔记与小收获,记录生活杂七杂八。

    3.1K21

    项目文件 csproj 或者 MSBuild Target 中使用 % 引用集合每一项属性

    在编写项目文件或者 MSBuild Target 文件时候,我们经常会使用 来定义集合一项。定义同时,我们也会额外指定一些属性。...WalterlvX 集合时候,我们使用了 @(Compile) 来获取所有需要编译文件。...定义 WalterlvY 集合时候,我们使用了 %(Compile.FileName) 来获取编译文件文件名。...于是,你警告信息中看到两个警告信息里面,一个输出了 Compile 集合每一项标识符(通常是相对于项目文件路径),另一个输出了每一个 Compile 项 FileName 属性。...需要注意,如果 % 得到某个属性为空,那么这一项最终形成集合是不存在

    24750

    DDD Go 落地 | 如何在业务中使用领域事件?

    作者 | 于振 责编 | 韩楠 朋友,你好,今天我想与你聊聊如何在业务中正确使用领域事件,通过前面几篇文章分享,相信你对 DDD Go 如何落地已经有了一定了解。...在这个简短定义,有两个点需要特别注意,一个是“领域中”,另一个是“领域专家关心”。领域中发生活动可以建模成一系列离散事件,但只有那些对领域专家是重要事件才被认为是领域事件。...至此,项目中所有的领域事件看起来是具有类似下面这种继承关系集合: ▶︎ 携带适当上下文信息 最后,领域事件还应该包含事件发生时上下文信息。...为了避免方法参数传递 EventPublisher,人们又提出了另外一种方法,即使用静态方法。...• 我们推荐实际业务中使用最后一种方式,虽然看起来复杂一些,但是我们可以对关键逻辑进行封装,从而减轻使用成本。具体我们会在最后一篇文章中进行详细介绍。

    1.6K30

    CSS实现前端布局更巧妙方案! flex 布局通过使用 margin 实现水平垂直居中以及其他常见前端布局

    让我们一起回顾一下常见方式:justify-content 和 align-items,然后再来探讨一下使用:margin 优势,以及如何在实际项目中使用它。...它工作原理是: Flexbox 布局,margin: auto; 会根据父容器剩余空间自动调整元素外边距,直到元素居中。...2.2 实现更多实际开发布局 示例 1:实现元素部分集中 实际开发,我们常遇到这样一种需求:将元素水平分布容器内,其中某些元素需要靠近在一起,与其他元素保持一定自适应距离。...使用 space-around 时如果最后一行元素数量不满,元素会在行均匀分布,导致它们集中中间,而不是靠左或对齐其他行。 大家遇到这些情况时是不是就在考虑换用 grid 布局了呢?...适当情况下直接使用 margin 进行布局是一种更优雅、简洁替代方案,可以 Flexbox 布局中有效地实现居中对齐和一些复杂布局需求。

    12910

    eBPF 入门开发实践教程四: eBPF 捕获进程打开文件系统调用集合使用全局变量过滤进程 pid

    本文是 eBPF 入门开发实践教程第四篇,主要介绍如何捕获进程打开文件系统调用集合,并使用全局变量 eBPF 过滤进程 pid。...使用全局变量 eBPF 过滤进程 pid全局变量 eBPF 程序充当一种数据共享机制,它们允许用户态程序与 eBPF 程序之间进行数据交互。...使用全局变量原理是,全局变量 eBPF 程序数据段(data section)定义并存储。当 eBPF 程序加载到内核并执行时,这些全局变量会保持在内核,可以通过 BPF 系统调用进行访问。...用户态程序可以使用 BPF 系统调用某些特性, bpf_obj_get_info_by_fd 和 bpf_obj_get_info,获取 eBPF 对象信息,包括全局变量位置和值。...通过学习本教程,您应该对如何在 eBPF 捕获和过滤特定进程系统调用有了更深入了解。这种方法系统监控、性能分析和安全审计等场景具有广泛应用。

    59010

    eBPF 入门开发实践指南四: eBPF 捕获进程打开文件系统调用集合使用全局变量过滤进程 pid

    本文是 eBPF 入门开发实践指南第四篇,主要介绍如何捕获进程打开文件系统调用集合,并使用全局变量 eBPF 过滤进程 pid。... eBPF 捕获进程打开文件系统调用集合 首先,我们需要编写一段 eBPF 程序来捕获进程打开文件系统调用,具体实现如下: #include #include <bpf/...使用全局变量 eBPF 过滤进程 pid 在上面的程序,我们定义了一个全局变量 pid_target 来指定要捕获进程 pid。... tracepoint__syscalls__sys_enter_open 和 tracepoint__syscalls__sys_enter_openat 函数,我们可以使用这个全局变量来过滤输出... eBPF 程序,我们还可以通过定义一个全局变量 pid_target 来指定要捕获进程 pid,从而过滤输出,只输出指定进程信息。

    1.9K10

    掌握 C# 变量代码声明、初始化和使用不同类型综合指南

    C# ,有不同类型变量(用不同关键字定义),例如: int - 存储整数(没有小数点整数), 123 或 -123 double - 存储浮点数,有小数点, 19.99 或 -19.99...要将文本和变量结合起来,使用 + 字符: string name = "John"; Console.WriteLine("Hello " + name); 您还可以使用 + 字符将一个变量添加到另一个变量...存储值 6 然后我们使用 WriteLine() 方法来显示 x + y 值,即 11 C# 多个变量 声明多个变量: 要声明同一类型多个变量,请使用逗号分隔列表: int x = 5, y =...(x + y + z); 第一个示例,我们声明了三个 int 类型变量(x、y 和 z),并为它们赋了不同值。...第二个示例,我们声明了三个 int 类型变量,然后将它们都赋予了相同值 50。 C# 标识符 所有的 C# 变量都必须使用唯一名称来标识。 这些唯一名称被称为标识符。

    37910

    如何为自己创建一个既时尚又好用博客网站

    具有以下特性: 特性 支持标签和类别 支持社区简介与添加作者头像 支持分页 支持pygments风格语法高亮 支持评论 支持自定义侧边栏背景图片 响应式布局 基于Bootstrap Glyphicon...使用Homebrew安装ruby: 终端运行: $ brew install ruby 第二步:安装Bundler Bundler是gem依赖关系管理工具,Bundler是使用Ruby语言写,通过跟踪和安装运行...如果在安装Bundler过程,gem提示缺少依赖包,可以按照提示现将依赖包安装完成之后,安装Bundler。 ?...第二步:设置dbyll 拿到disqus简称之后就可以_config.yml文件文件添加disqus: disqus short name;添加完成之后发布你网站,就可以看到disqus评论板块了...以下是发表文件一些规范: 博客更新指南 —– clone 仓库到本地 _posts目录下新建文章,2016-7-30-react-native-study-note,可以参考https://github.com

    1.9K70

    Jekyll-Admin-Mac 开发纪要-左侧菜单栏

    何在 Swift3获取类名字符串 解决 Cocoapods不能使用 IBDeisgnable 面向对象思想 ✅为什么要开发 Jekyll-Admin-Mac?...Xcode6使用IBDesignable创建自定义控件(翻译) 关于如何 NSView自定义背景颜色参考下面的连接 我们设置 NSView为继承与 BaseView 背景颜色试图。...布局参考之前 NSImageView布局。 我们把刚才 NSImageView作为试图,布局设置下面。 ? ?...我们最左侧放置一个 NSImageView布局如下。 ? 我们 NSImageView右侧放置一个 NSTextFiled Label,布局如下。 ? ?...类型,但是我们此时还不存在这个变量。故而强行当做存在使用崩溃了。 到目前为止,我不清楚这个对象没有初始化是为什么导致

    2.1K10

    何在GitHub免费搭建个人博客网站?

    何在GitHub免费搭建个人博客网站?当你想要开始自己博客之旅,但又不想花费金钱购买服务器和域名时,还有一些免费平台可供你选择。...步骤三:下载 Jekyll 主题  Jekyll 是一个简单易用静态网站生成器,GitHub Pages 支持使用 Jekyll 搭建个人网站。...步骤四:上传文件到 GitHub 仓库  将 Jekyll 主题文件夹所有文件上传到你步骤二创建 GitHub 仓库。...步骤五:访问你博客网站  等待一段时间,GitHub 会自动构建你网站,并将其托管bokequ.github.io这个地址上。你可以浏览器输入这个地址,访问你个人博客网站。  ...步骤六:定制你博客  编辑 Jekyll 主题文件夹配置文件和内容文件,定制你个人博客。你可以修改页面布局、添加新页面和文章,以及调整样式和颜色。

    14910

    开垦属于你网络空间:简单易用静态博客框架推荐

    这篇文章介绍了几个非常出色且备受欢迎开源项目。不论是Hugo、Jekyll、Hexo还是Eleventy,各自领域内都表现出色。...简单易用:Jekyll 不会给用户带来不必要复杂性和配置,它只做你告诉它去做事情。 高度可定制化:使用 Jekyll,您可以根据自己需求轻松地创建个人、项目或组织网站,并对其进行完全控制。...Markdown 和 Liquid 模板支持:通过渲染 Markdown 和 Liquid 模板,Jekyll 可以将您提供内容转换为完整且静态化可以直接托管 Apache、Nginx 或其他 Web...这使得使用 Hexo 体验变得非常灵活便利。 完善文档资料:官方网站上提供详尽清晰易懂并附带示例代码说明书籍,让初学者也能轻松上手。...特性: Aurora具有良好扩展性,保证稳定运行情况下可以根据业务需求灵活添加新功能; 通过权限控制机制确保安全访问; 友好简洁界面设计及响应式布局适配各类设备屏幕大小; 集成CDN加速以提高网站加载速度

    46640
    领券