当前位置: 首页 > news >正文

Hexo使用添加本地图片不用图床 的完美解决方案

1 问题

图床非常不稳定,现在新浪图床已经打不开了。所以最安全的方法还是放在自己的站点。

早期的方法是放在source/images文件夹中。然后通过类似于 ![](/images/image.jpg) 的方法访问它们。这种缺点是无法在本地编辑器中查看。因为路径是相对source的,而在编辑md文章时候,md文章所在目录可没有/images。

在 hexo 2.x 时出现的插件,后来被吸纳进 hexo 3 core ,用法的介绍见 资源文件夹 | Hexo 。比较尴尬的是,这种方法直接放弃了 markdown 原来的语法。markdown 本来有插入图片的语法不好好支持,专门用一个新的语法来插入本地图片,让我这种强迫症不太能接受。

2 解决方案

首先确认 _config.yml 中有 post_asset_folder:true

在 hexo 目录,执行

npm install https://github.com/CodeFalling/hexo-asset-image --save

假设在

MacGesture2-Publish
├── apppicker.jpg
├── logo.jpg
└── rules.jpg
MacGesture2-Publish.md

这样的目录结构(目录名和文章名一致),只要使用 ![logo](logo.jpg)就可以插入图片。

生成的结构为

public/2015/10/18/MacGesture2-Publish
├── apppicker.jpg
├── index.html
├── logo.jpg
└── rules.jpg

同时,生成的 html 是

<img src="/2015/10/18/MacGesture2-Publish/logo.jpg" alt="logo">

而不是愚蠢的

<img src="logo.jpg" alt="logo">

而且在主页,文章页都可以显示。


参考:

在 hexo 中无痛使用本地图片 - jianhuicode - 博客园

打赏

相关文章:

  • 微PE安装系统 不显示U盘中镜像文件 的解决方法
  • 不加 “...快捷方式“后缀 和 移除快捷方式箭头的方法
  • Windows 谷歌浏览器插件无法从该网站添加应用
  • 在Coding.net上搭建并配置 gitbook电子书 的记录
  • 易语言 引号换行符自动替换 源码
  • iphone短信全部已读的方法
  • 易语言去除html标签方法
  • sql删除表所有记录 命令
  • IntelliJ Idea 向上/下插入空行快捷键
  • jquery 选择class下第几个元素
  • 两两独立为什么不能推出相互独立
  • 易语言 显示中文引号的方法
  • 易语言将JS对象转为json文本
  • java核心技术卷1 第11版 勘误表
  • InputStream.read 何时返回0
  • [数据结构]链表的实现在PHP中
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • 230. Kth Smallest Element in a BST
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • ECMAScript入门(七)--Module语法
  • ECS应用管理最佳实践
  • iOS 颜色设置看我就够了
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • Javascript基础之Array数组API
  • Octave 入门
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • React Transition Group -- Transition 组件
  • 成为一名优秀的Developer的书单
  • 大整数乘法-表格法
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 简析gRPC client 连接管理
  • 紧急通知:《观止-微软》请在经管柜购买!
  • 目录与文件属性:编写ls
  • 因为阿里,他们成了“杭漂”
  • 用简单代码看卷积组块发展
  • HanLP分词命名实体提取详解
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • #Spring-boot高级
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • (a /b)*c的值
  • (AngularJS)Angular 控制器之间通信初探
  • (LeetCode) T14. Longest Common Prefix
  • (八)Spring源码解析:Spring MVC
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (转)用.Net的File控件上传文件的解决方案
  • *setTimeout实现text输入在用户停顿时才调用事件!*
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • .net 验证控件和javaScript的冲突问题
  • .net 逐行读取大文本文件_如何使用 Java 灵活读取 Excel 内容 ?
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件
  • .NET/C# 项目如何优雅地设置条件编译符号?
  • .NET开发者必备的11款免费工具
  • .net下简单快捷的数值高低位切换
  • .vue文件怎么使用_vue调试工具vue-devtools的安装