12.Hexo helpers类似函数和data folder数据文件夹

news2024/12/23 16:07:24

helper

Hexo里的helper,或者说是函数
基本上就是小函数,可以在layout布局中使用,可以允许做一些事情
如字符串操作、检查true或false、检查是否在一个页面上、打印出某个页面中的日期或时间特定格式

打开index.ejs
![[Pasted image 20240421140438.png]]

trim

可以通过

<%-  %>

来访问helpers

在中间输入想要输入的helper的名称

<%- trim %>

修剪前面的空白,字符串的尾随空格

<%- trim("   This is my string   ")%>

这个字符串前后都有空格
在浏览器中渲染的时候,空格就消失了
![[Pasted image 20240421141113.png]]

titlecase

控制字符串中的大小写,将字符串中的每个单词大写

<%- titlecase("This is my string")%>

![[Pasted image 20240421141437.png]]

发现每个单词的首字母都变为大写字母

date

可以用来显示日期和时间

<%- date() %>

要传入的第一个事是想要分开i的日期
frontmatter上的日期,比如有一篇博客文章,可以用它来解析博客前面的日期
或者直接输入当前的日期

<%- date(Date.now(), 'YYYY/M/D') %>

这样会提供当前日期和时间,然后给出想要打印使用的格式
![[Pasted image 20240421142215.png]]

time
<%- time(Date.now(), 'h:mm:ss a') %>

h:mm:ss是时间格式,a来显示是am还是pm
![[Pasted image 20240421142436.png]]

其余的helper可以查看官方的Hexo文档
Helpers | Hexo


data folder

date foler是一个非常特殊的文件夹
基本上可以用作是网站上的迷你数据库,可以去存储外部数据文件的地方,如果想要在网站内部使用这些文件

在Hexo中存储信息的方式之一是在frontmatter中
有a和b两个md文件
![[Pasted image 20240421144632.png]]

![[Pasted image 20240421144639.png]]

可以知道标题日期和作者

如果想要存储与特定博客文章无关的数据
如果想要访问一般数据
可以使用data folder来实现操作
![[Pasted image 20240421144855.png]]

在source文件夹里,创建一个_data文件夹
在这个文件夹里可以创建数据文件
有两种格式

  1. .json
  2. .yml
    这也是frontmatter可以使用的两种格式
    所以访问数据文件夹和数据文件和访问frontmatter相似

![[Pasted image 20240421145227.png]]

创建一个数据文件myData.yml
![[Pasted image 20240421145338.png]]

这里有一些简单的值,都只有字符串
要做的就是在任何一个模板中去使用这个文件里的信息

转到index.ejs文件
输入

<%- site.data.myData.var1 %>

![[Pasted image 20240421145807.png]]

![[Pasted image 20240421145920.png]]

其余的也一样
![[Pasted image 20240421145950.png]]

循环访问data文件中的数据

<% for(var value in site.data.myData) { %>

<% } %>

会循环遍历数据文件上的所有值
这些值会存储在var value中
比如要打印这些值

<% for(var value in site.data.myData) { %>
	<%- value %> <br>
<% } %>

![[Pasted image 20240421150441.png]]

这样可以打印出所有变量的名称,而不是打印出变量的值

<% for(var value in site.data.myData) { %>
	<%- site.data.myData[value] %> <br>
<% } %>

![[Pasted image 20240421150801.png]]

这样就访问了data file里的变量

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1613460.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

模板类,模板函数初识

前提&#xff1a; 模板概念&#xff1a;&#xff08;引用自菜鸟教程&#xff09; 即&#xff1a;模板是蓝图&#xff08;类或对象&#xff09;的蓝图&#xff08;通过传不同信息&#xff08;类型&#xff09;创建不同函数和类&#xff09;&#xff0c;能使编程不受类型限制&am…

【代码随想录刷题记录】LeetCode34在排序数组中查找元素的第一个和最后一个位置

题目地址 最近忙活实验&#xff0c;实在没空刷题&#xff0c;这个题对我来说难度还蛮大的&#xff0c;尤其是理解那个找左边界和找右边界的条件&#xff0c;后来我按照自己的理解写了出来&#xff08;感觉给的答案解释起来有点反认识规律&#xff09;&#xff0c;所以我从0开始…

ASP.NET Core 3 高级编程(第8版) 学习笔记 04

第 19 章主要介绍 Restful Service 的相关知识。Restful Service 的核心内容是&#xff1a;&#xff08;1&#xff09;HTTP 请求或 HTTP 动词&#xff0c;用 HTTP 请求表达不同的操作&#xff0c;最好遵守惯例。&#xff08;2&#xff09;资源&#xff0c;通过 PATH 结合 paylo…

[Linux][多线程][一][线程基础概念][进程VS线程][线程控制]详细讲解

目录 0.预备知识1.页表的映射2.二级页表 1.线程基础概念1.什么是线程&#xff1f;2.理解流程梳理 -- 如何理解线程&#xff1f;3.线程优点4.线程缺点5.线程异常6.线程用途 2.进程VS线程1.进程和线程2.进程和线程的资源共享3.进程和线程的关系4.关于进程线程的问题 3.线程控制1.…

机器学习(二)之监督学习

前言&#xff1a; 上一节大概讲解了几种学习方式&#xff0c;下面几张就具体来讲讲监督学习的几种算法。 以下示例中和都是权重的意思&#xff01;&#xff01;&#xff01; 注&#xff1a;本文如有错误之处&#xff0c;还请读者指出&#xff0c;欢迎评论区探讨&#xff01; 1…

解释一下“暂存区”的概念,在Git中它扮演什么角色?

文章目录 暂存区在Git中的概念与作用什么是暂存区&#xff08;Staging Area&#xff09;暂存区的位置和结构 暂存区在Git工作流程中的角色1. 分离工作区与版本库的交互示例代码与操作步骤示例1&#xff1a;将工作区的修改添加至暂存区 2. 控制提交内容的粒度示例2&#xff1a;分…

玩转Virtual Box虚拟机

玩转Virtual Box虚拟机 虚拟化技术和虚拟机简介 什么是虚拟化技术&#xff1f; 虚拟化技术是将计算机的各种硬件资源予以抽象、转换、分割、组合的一种计算机技术。虚拟化技术打破了实体结构间不可切割的障碍&#xff0c;从而使用户可以按照需求重新组合硬件资源&#xff0c…

C/C++开发,opencv-ml库学习,支持向量机(SVM)应用

一、OpenCV支持向量机&#xff08;SVM&#xff09;模块 1.1 openCV的机器学习库 OpenCV-ml库是OpenCV&#xff08;开放源代码计算机视觉库&#xff09;中的机器学习模块&#xff0c;常用于分类和回归问题&#xff0c;它是 OpenCV 众多modules下的一个模块。 该模块提供了一系列…

第15届蓝桥杯题解

A题 结果&#xff1a;2429042904288 思路很简单 前20个数分别是 20 24 40 48 60 72 80 96 100 120 140 144 160 168 180 192 200 216 220 240 第2 4 6 8 12 ...n个数分别是24的 1倍 2倍 3倍 4倍 6倍 n/2倍 所以第202420242024 个数就是 24的 101210121012倍 B题 答案&am…

十一、Yocto集成tcpdump等网络工具

文章目录 Yocto集成tcpdump等网络工具networking layer集成 Yocto集成tcpdump等网络工具 本篇文章为基于raspberrypi 4B单板的yocto实战系列的第十一篇文章&#xff1a; 一、yocto 编译raspberrypi 4B并启动 二、yocto 集成ros2(基于raspberrypi 4B) 三、Yocto创建自定义的lay…

Docker 安装 Mongo

创建宿主机目录 在你的宿主机上创建必要的目录来存储 MongoDB 的数据和配置文件。这样做可以保证即使容器被删除&#xff0c;数据也能得到保留。 mkdir -p /develop/mongo/data mkdir -p /develop/mongo/config创建 MongoDB 配置文件 创建一个名为 mongod.conf 的 MongoDB 配…

arping命令详解

arping – send ARP REQUEST to a neighbour host. arping 是一个在网络中发送 ARP 请求以查找特定 IP 地址对应的 MAC 地址的命令行工具。它的功能类似于 ping 命令&#xff0c;基于ARP协议报文的交互机制&#xff0c;只能测试同一网段或子网的网络主机的连通性。 ARP 是 Add…

【声呐仿真】学习记录1.5-使用docker配置dave(先看这个!)、解决一些问题

【声呐仿真】学习记录1.5-使用docker配置dave、解决一些问题 docker配置dave123 以下为未完全解决问题的随手记录&#xff0c;待日后解决再补充1.pcap、png解决&#xff0c;libusb未解决&#xff08;不要修改libusb相关的&#xff09;2.ISO C3.换源4.自动安装相关依赖 docker配…

【保姆级讲解下gateway基本配置】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

1、揭开程序运行的神秘面纱

要深入理解JVM技术&#xff0c;我们必须先搞清楚一个基本问题&#xff1a;我们日常编写的Java代码是如何被执行的呢&#xff1f; 让我们逐步解析这个问题。首先&#xff0c;假设我们已经编写了一些Java代码&#xff0c;这些代码通常会包含许多以“.java”为后缀的源文件&#…

《深入浅出.NET框架设计与实现》笔记2——C#源码从编写到执行的流程

中间语言&#xff08;Intermediate Language&#xff0c;IL&#xff09; C#编译器在编译时&#xff0c;会将源代码作为输入&#xff0c;并以中间语言形式输入出&#xff0c;该代码保存在*.exe文件中或*.dll文件中。 公共语言运行时&#xff08;CLR&#xff09; 可以将IL代码…

ROS机器人入门第七课:参数服务器

文章目录 ROS机器人入门第七课&#xff1a;参数服务器一、参数服务器介绍二、参数操作1.参数服务器新增(修改)参数2.参数服务器获取参数3.参数服务器删除参数 ROS机器人入门第七课&#xff1a;参数服务器 一、参数服务器介绍 参数服务器在ROS中主要用于实现不同节点之间的数据…

【第34天】SQL进阶-SQL高级技巧-Window Funtion(SQL 小虚竹)

回城传送–》《100天精通MYSQL从入门到就业》 文章目录 零、前言一、练习题目二、SQL思路初始化数据什么是Window Funtion窗口函数的分类语法结构第一种写法&#xff1a;第二种写法&#xff1a; 实战体验序号函数&#xff1a;row_number()序号函数&#xff1a;rank()序号函数&…

AI大模型量化格式介绍(GPTQ,GGML,GGUF,FP16/INT8/INT4)

在 HuggingFace 上下载模型时&#xff0c;经常会看到模型的名称会带有fp16、GPTQ&#xff0c;GGML等字样&#xff0c;对不熟悉模型量化的同学来说&#xff0c;这些字样可能会让人摸不着头脑&#xff0c;我开始也是一头雾水&#xff0c;后来通过查阅资料&#xff0c;总算有了一些…

Leetcode144_二叉树的前序遍历

1.leetcode原题链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 2.题目描述 给你二叉树的根节点 root &#xff0c;返回它节点值的 前序 遍历。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[1,2,3]示例 2&#xff1a; 输入&#xf…