Hello-hexo
一次完整的Hexo写作流程
https://fuguigui.github.io/hexo2/
总结来说,最常用的套路就是
hexo g; hexo s本地预览,再更改(文章内容自动实时状态),直到满意为止
hexo d; 或者hexo g; hexo d远程部署。
新建一遍随笔文章
hexo n 0模版 xxx
hexo 如何写多个tag
类似与数组,必须使用逗号, 隔开各个tag
比如:[AI,人脸识别,人脸对比,机器人脸比对,批量人脸比对]
第二种方法是:
- 如何使用hexo
- hexo
关于github如何重新运行deployment:发布文章至github.io
打开链接:https://github.com/chuanzhuo/blog/actions/runs/6364108418/job/17311236272
Re-run jobs
历史记录和查看当前workflow运行的情况:https://github.com/chuanzhuo/blog/actions
如何插入代码段?
前后单独段落的三个撇:```
$ sudo -i
插入本地图片
这里主要参考这篇文章赵大宝hexo-images,
举例说明(设置大小和样式) { % img http://www.viemu.com/vi-vim-cheat-sheet.gif 200 400 vi-vim-cheat-sheet % }
这个功能太赞了,我终于可以链接我的Evernote存储的Skitch应用(发布的链接)来方便地展示图片了!

第二种支持的图片语法(比较通用)
<img src= https:// >
让hexo的首页只显示文章的部分内容而不是全部
在文章的 front-matter 中添加 description,并提供文章摘录
如何加入到模版中,每次hexo new ""的时候,自动有这个标签?
使用表格
首页 | 配置页 |
---|---|
![]() |
![]() |
| 标题1 | 标题2 | 标题3 | | ------ | ------ | ------ | | 文本好短 | 文本不短也不长 | 文本好长文本好长文本好长 | | 文本好长文本好长文本好长 | 文本好短 | 文本不短也不长 |
官方中文文档
https://hexo.io/zh-cn/docs/writing.html
大方向(大体)思路
https://cloud.tencent.com/developer/article/1546392
步骤参考
使用hexo在GitHub上搭建个人博客 https://developer.aliyun.com/article/940387
存储位置:
https://github.com/chuanzhuo/blog
Hexo Markdown 简明语法手册
怎么安装新的hexo插件,步骤如下:
比如:https://github.com/next-theme/hexo-generator-searchdb
- Installation
- $ npm install hexo-generator-searchdb
- Detail Configuration
hexo next 不生成tag页面解决方案
https://blog.csdn.net/yinjiangQAQ/article/details/103951416
hexo 阅读排行榜
感觉不好弄,而且需要依赖另外一个计数系统 https://www.jianshu.com/p/27b971d84f76
hexo 自动生成url, 文章URL设置
一直没有安装那个自定义文章URL的插件,主要是考虑到个人喜好:尽量避免安装过多插件(仅留下长期使用的)
- 今日切换到懒人模式, 使用hash值
这个方案虽然无法自定义文章url,但是hash值是根据文件名和日期自动生成的,只要我不修改文章标题(同文件名)
url值就会永久保留。
虽然无法做到SEO友好的url,但我不能给我自己增加开启一遍新的随笔的动力,不给自己添堵。 - 最终切换为对人类更友好的日期模式。
参考:
hexo文章url设置
Hexo永久链接(Permalinks)生成方式比较
Note:宝塔 部署 Hexo,没有意义。hexo 写博客流程
github.io 还是选择使用hexo.io的构架,能长久!文档,本地编辑,git。 不依赖vps或服务器。 .md文件的编辑罢了 放弃方案:使用宝塔面板快速搭建Typecho个人博客(图文教程)
hexo这种模式的优点
-
可以极其方便地不停的更新文章内容,版本不停迭代,(不再像cnblogs发布后,不搭理文章了,由于维护很麻烦,人的惰性成为一大阻力)
-
样式和设置随时更新,极其方便的hexo -g即可本地实时预览到(hexo -s 如果一直开着,会自动动态刷新)
-
不需要VPS,不受制于具体的平台或服务
-
Next 说明:https://theme-next.js.org/docs/theme-settings/footer.html?highlight=copyright
-
设置了security插件,说明:
https://github.com/D0n9X1n/hexo-blog-encrypt/blob/master/ReadMe.zh.md
hexo
hexo文末 添加本文的url
解决慢慢迁移到新blog的长远目标
20231024 文末添加当前文章链接和版权声明
hexo-addlink 文末添加当前文章链接和版权声明 https://github.com/acwong00/hexo-addlink
原来这个插件已经6-7年前的了,无效了。直接使用NexT中的设置即可解决
文章链接和版权声明需求。
creative_commons: # Available values: by | by-nc | by-nc-nd | by-nc-sa | by-nd | by-sa | cc-zero license: by-nc-sa # Available values: big | small size: small sidebar: true post: true
可是生成的本文链接地址不正确(不是https://chuanzhuo.github.io/blog/)
文末添加当前文章日期信息
编辑NexT中的post-followme.njk
文件目录:》themes〉next》layout〉_partials 》 post
添加如下到div中(从#33行以下是添加的),为方便你直接使用,贴出修改后的.njk全文:
<div class="followme"> <span>{{ __('follow_me.welcome') }}</span> <div class="social-list"> {%- for name, value in theme.follow_me %} {%- set link = value.split('||')[0] | trim %} {%- set icon = value.split('||')[1] | trim if value.split('||')[1] else '' %} <div class="social-item"> {%- if link.endsWith('.png') or link.endsWith('.jpg') %} <span class="social-link"> <span class="icon"> <i class="{{ icon }}"></i> </span> <span class="label">{{ name }}</span> </span> <img class="social-item-img" src="{{ url_for(link) }}"> {%- else %} <a target="_blank" class="social-link" href="{{ url_for(link) }}"> <span class="icon"> <i class="{{ icon }}"></i> </span> <span class="label">{{ name }}</span> </a> {%- endif %} </div> {%- endfor %} </div> {%- set date_diff = date(post.date) != date(post.updated) %} {%- set time_diff = time(post.date) != time(post.updated) %} {%- if theme.post_meta.created_at %} <span> <span class="post-meta-item-icon"> <i class="far fa-calendar"></i> </span> <span class="post-meta-item-text">{{ __('post.posted') }}</span> {%- if not date_diff and time_diff and theme.post_meta.updated_at.enable and theme.post_meta.updated_at.another_day %} {%- set create_title = __('post.created') + __('symbol.colon') + full_date(post.date) + ' / ' + __('post.modified') + __('symbol.colon') + time(post.updated) %} {% else %} {%- set create_title = __('post.created') + __('symbol.colon') + full_date(post.date) %} {%- endif %} <time title="{{ create_title }}" itemprop="dateCreated datePublished" datetime="{{ moment(post.date).format() }}">{{ date(post.date) }}</time> </span> {%- endif %} {%- if theme.post_meta.updated_at.enable and (not theme.post_meta.updated_at.another_day or date_diff or not theme.post_meta.created_at) %} <span class="post-meta-item"> <span class="post-meta-item-icon"> <i class="far fa-calendar-check"></i> </span> <span class="post-meta-item-text">{{ __('post.edited') }}</span> <time title="{{ __('post.modified') + __('symbol.colon') + full_date(post.updated) }}" itemprop="dateModified" datetime="{{ moment(post.updated).format() }}">{{ date(post.updated) }}</time> </span> {%- endif %} </div>
关于404页面
需要在html头添加一个自动跳转的功能
(由于所有文章生成的链接有变动,导致404页面变得重要了)
编辑位置 /source/404/index.md
<script> document.location = 'https://chuanzhuo.github.io/blog/' </script>
hexo使用Artalk评论系统
https://www.iots.vip/post/hexo-artalk-comment.html
痛点:目前我不知道我的那些文章是最近被关注的?
https://statcounter.com/p12934590/visitor/
blog的文章浏览的监控/统计,
即便是一个简单的列表,今日或昨日,有多少人浏览了那些html页面,排行榜
这样我就可以针对这些文章进行,更新,改进,迭代。
可否直接使用http的服务?避免使用域名的门槛问题
不可以
Artalk 的IP归属地检测,仍然失效,如何解决?(不知道如何调试)
已下载并配置:./data/ip2region.xdb
移动4G网络仍然无法访问https://@.carlzeng.top:@
具体步骤和笔记详见:(《Hexo定制之家宽部署artalk评论系统》)[https://www.carlzeng.top/202310261222.html]
外网正常后,IP归属地检测自动就正常了
3年或6-7年以前的hexo插件就不要考虑了
比如:https://github.com/huiwang/hexo-recommended-posts
实践了半天,也可能是服务器早就挂了
https://www.npmjs.com/package/hexo-recommended-posts?activeTab=explore
严重质疑这个npm,保留一堆过时的包。
添加最近的文章 How to add recent posts to Next theme(v8.x.x)
https://egbert-yu-ting.github.io/posts/68394953/
调整半天的css, 在sidebar.njk中;务必是在_data文件夹下。
In the /blog/source/ path, establish _data/sidebar.njk file under source/ directory, and add contents into sidebar.njk as below:
<!-- recent posts --> {%- if theme.recent_posts %} <div class="sidebar-inner sidebar-overview-active animated fadeInUp"> <div class="links-of-blogroll-title recent-posts-title"> <i class="fa fa-history {{ theme.recent_posts_icon | lower }}" aria-hidden="true"></i> {{ theme.recent_posts_title }} </div> <ul class="links-of-blogroll-list recent-posts-list"> {%- set posts = site.posts.sort('-date').toArray() %} {%- for post in posts.slice('0', '5') %} <li class="popular-posts-item"> <a href="{{ url_for(post.path) }}" title="{{ post.title }}" target=""> {{ post.title }} </a> </li> {%- endfor %} </ul> </div> {%- endif %}
解决每次hexo clean后都要手动添加wechat_channel.png到public目录
由于hexo clean会删除public文件夹,需要把固定住的突破保存到》themes〉next》source〉image
新版hexo 的next 怎么把分页的数量调多点?
打开 ./themes/next/layout/_partials/pagination.njk 文件,
找不到 mid_size 字段,指向next_paginator函数。
打开 ./themes/next/script/helpers/next-paginator.js 文件
仅修改mid_size字段内容,修改完效果如下:
let paginator = this.paginator({ prev_text: '<i class="fa fa-angle-left"></i>', next_text: '<i class="fa fa-angle-right"></i>', mid_size : 5, escape : false });
Next
- [Done]考虑是否将cnblogs里面备份下来的xml文件,如何重新发布到hexo中?
- 学习:https://www.itfanr.cc/about
- hexo博客通过webhook自动部署到个人VPS
- 插件列表:Hexo博客 | 插件推荐
Best
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
2014-10-29 Netsuite订单审核问题
2008-10-29 baidu空间提交评论的脚本,在netsuite中的应用。