实现步骤

第一步:修改项目根目录下的_config.yml文件参数post_asset_folder值为true

# 开始使用本地静态资源
post_asset_folder: true

第二步:安装插件hexo-asset-image

# 在项目根目录下执行
npm install https://github.com/xcodebuild/hexo-asset-image.git --save

完成上述配置后,在使用命令hexo new post新建文章时,将会在source/_posts目录下创建一个与文章同名的目录。

hexo new post "测试文章"
|____scaffolds
|____source
| |_____posts
| | |____测试文章.md
| | |____测试文章 # 与文章同名的目录,用于保存在文章中引入的本地图片资源
|____themes

如上,新建“测试文章.md”时,将会在_posts目录下创建同名文件夹“测试文章”,在“测试文章.md”文件中需要引入的图片文件只要放在目录“测试文章”下即可。

图片引用方式:

# 引用图片的时候一定要带上目录名称作为路径
![本地图片](测试文章/本地图片.jpg)

使用该方式引用的图片既可以在本地预览,正式发布之后也能正常显示。

原理说明

显然,在hexo中引入图片的方式稍微有点繁琐,即:必须在_post目录下新建一个与文章同名的目录,然后将需要引用的图片文件都放在该目录中。

还好使用插件hexo-asset-image能够帮助我们自动创建图片目录(每次都会自动创建,如果在文章中不需要引用图片资源,可以手动将该目录删除)。

那么,为什么需要将文章引用的图片放置在与文章同名的目录呢?

原因是:在执行hexo g命令的时候会将文章转换为一个index.html文件,该文件路径为public/年/月/日/文章名称/index.html,同时也会将文章中引用的图片文件拷贝到与index.html文件相同的目录中。

另外,转换后的index.html文件保存路径中有一个年/月/日,这是在项目配置文件_config.ymlpermalink参数中配置的,默认值为:

permalink: :year/:month/:day/:title/

【参考】

https://leay.net/2019/12/25/hexo/ Hexo 引用本地图片以及引用本地任意位置图片的一点思路

https://blog.csdn.net/LiuChengYu520/article/details/82657407 hexo-asset-image使用方法

https://blog.glwsq.cn/2019/10/22/41cc6f18/ hexo-asset-image【让本地和网页都正常显示图片】

http://www.itomtan.com/2017/09/29/the-problem-when-use-post-asset-folder/ Hexo开启post_asset_folder后, 安装hexo-asset-image,不起作用的问题

在Hexo中引入本地图片的实现的更多相关文章

  1. Hexo中添加本地图片

    First 1 把主页配置文件_config.yml 里的post_asset_folder:这个选项设置为true 2 在你的hexo目录下执行这样一句话npm install hexo-asset ...

  2. iOS之在webView中引入本地html,image,js,css文件的方法 - sky//////////////////////////////////////ZZZZZZZZZZZZZZZ

    iOS之在webView中引入本地html,image,js,css文件的方法   2014-12-08 20:00:16CSDN-sky_2016-点击数:10292     项目需求 最近开发的项 ...

  3. 在InternetExplorer.Application中显示本地图片

    忘记了,喜欢一个人的感觉 Demon's Blog  »  程序设计  »  在InternetExplorer.Application中显示本地图片 « 对VBS效率的再思考——处理二进制数据 Wo ...

  4. tomcat中显示本地图片①(未解决)

    <本模块文仅作为学习过程中的自我总结,有需要可参看,欢迎指导与提出建议,很多地方可能断章取义,理解不到位,虚心求学.谢谢!> 资料查阅原因:2018/7/10(做项目中显示详情页面,从数据 ...

  5. jsp引入本地图片

    jsp引入本地图片 通用解决方法: 在tomcat的server.xml配置文件中,在<host></host>标签中间添上一句 <!-- docBase : 磁盘绝对路 ...

  6. Vue - 引入本地图片的两种方式

    第一种,只引入单个图片,这种引入方法在异步中引入则会报错. 比如需要遍历出很多图片展示时 <image :src = require('图片的路径') /> 第二种,可引入多个图片,也可引 ...

  7. webpack配置less以及js中引入的图片问题

    1.问题重现 当我做了这个配置以后,发现less里的图片可以正常展现到页面,但是js里的图片以及其他文件都不能正常展现,都报404 原始配置如下: // 如果有額外的.babelrc配置的話就可以使用 ...

  8. vue中data中引用本地图片报错404

    首先说明vue-cli中assets和static两个文件的区别 1.assets在项目编译的过程中会被webpack处理理解为模块依赖,如果执行npm run dev或npm run build命令 ...

  9. vue中引入静态图片

    vue+webpack中,可以使用require imageList: [ { url: require('../image/pig.png') } ] vue+vite没有require方法 // ...

  10. tomcat中显示本地图片①(已解决)

    解决方案 我直接放源码了. 原理就是:我虽然调用的是虚拟目录,但是会映射到对应路径的实际 第一步:(在tomcat的 server.xml中创建一个虚拟目录) 虚拟目录创建方式: <Contex ...

随机推荐

  1. [转帖]JMeter学习(二)搭建骨架--JMeter重要组件

    https://www.cnblogs.com/tian-yong/p/4460665.html JMeter的属性和变量 JMeter属性统一定义在jmeter.properties文件中.JMet ...

  2. [转帖]Tomcat 优雅关闭之路

    本文首发于 vivo互联网技术 微信公众号链接:https://mp.weixin.qq.com/s/ZqkmoAR4JEYr0x0Suoq7QQ作者:马运杰 本文通过阅读Tomcat启动和关闭流程的 ...

  3. Oracle Linux7 与Oracle Linux8 下载rpm包的位置

    Oracle Linux 7 http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/index.html 索引页 http://yum.or ...

  4. Charles的基本使用

    今天介绍Charles常用的几个功能 一.map local 1.map local是测试中mock数据常用的功能,首先我们选择需要mock数据的接口,这里以百度为例 抓包抓住该接口后鼠标右击选择ma ...

  5. echarts饼图的配置 封装组件的注意点

    1==>tooltip 类似饰hover效果提示框组件.光标放上去会触发 2==>formatter // 饼图 {a}(系列名称),{b}(数据项名称),{c}(数值), {d}(百分比 ...

  6. 【踩了一个坑】为什么 golang struct 中的 slice 无法原子赋值

    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 有这样一个结构体: type MySt struct{ F ...

  7. Rocketmq学习4——Broker消息持久化原理源码浅析

    一丶前言 在<Rocketmq学习3--消息发送原理源码浅析>中,我们学习了消息发送的要点: 本地缓存+rpc 请求namesever + 定时刷新,topic路由信息 负载均衡的选择一个 ...

  8. 【任务调度】Spring 的动态定时任务之 ScheduledTaskRegistrar(解决方案一)

    前言 ​ 在做SpringBoot项目的过程中,有时客户会提出按照指定时间执行一次业务的需求. ​ 如果客户需要改动业务的执行时间,即动态地调整定时任务的执行时间,那么可以采用SpringBoot自带 ...

  9. MySQL【二】---数据库查询详细教程{查询、排序、聚合函数、分组}

    1.数据准备.基本的查询(回顾一下) 创建数据库 create database python_test charset=utf8; 查看数据库: show databases; 使用数据库: use ...

  10. C/C++ 感染标志与空字节感染

    C/C++ 通过搜索PE结构中的空隙部分,对指定文件写入感染标志,作用是,如果程序被感染过则不再继续感染,而搜索空字节,则是要将恶意代码动态的填充到可执行文件中,并劫持执行流,以下代码就是这两种代码的 ...