欢迎star,fork。如使用中有问题请仔细阅读下面说明信息。
模板仓库:https://github.com/hdxw/hexo-theme-prowiki
在线demo:https://demo.wujiaxing.com/prowiki
已知问题
BUG
- 代码复制按钮占用代码宽度,代码块出现横向滚动条时比较明显。
未支持的功能
- 添加分享功能/文章底部打赏/访客统计
- 支持文章搜索,npm install hexo-generator-searchdb –save
- 支持RSS,并添加header
<link rel="alternate" href="path/of/rss" type="application/atom+xml">
- …
更新日志
feature-v1.3
1.fix:加密文章右侧目录定位略有偏移;加密文章标题前加锁标志
2.fix:只放大查看无嵌套格式下的图片;返回顶部改为向上箭头
3.fix: 引用文字超长溢出边界
4.支持gitalk留言功能5.配置文件添加项,自定义配色方案
release-v1.2
未完,待续
1.优化作者头像垂直对齐
2.支持下拉菜单
3.更改demo域名:https://demo.wujiaxing.com/prowiki/
4.修改favicon.ico路径,/img/favicon.ico => /favicon.ico
5.更新普惠体字体文件puhuiti.ttf => puhuiti3.woff2
release-v1.1
修bug,加功能
1.修复加密文章中table/img样式问题,img点击不放大问题
2.fix配置信息。默认作者为主题中配置的第一个,网页header添加根目录配置中的站点信息
3.顶部菜单支持新标签页跳转
4.文章右侧目录显示当前所处位置,并随着页面自动变化、移动
5.代码块,添加一键复制功能
release-v1.0
第一个正式发布版本
1.适配hexo-theme-unit-test所有样式
2.调整发现的其余css样式问题
3.支持图片查看大图
develop-v0.9
1.完成基础页面内容展示,基础样式初设
2.支持创建:分类、标签、友链页面
3.预设兼容hexo-blog-encrypt插件
4.为了方便,简化掉了首页中文章开头可有可无的摘要
安装与配置
傻瓜教程
hexo新建项目
初始化项目
1 |
|
复制prowiki到/themes/中,并修改hexo-theme-prowiki-demo/_config.yml的配置如下
1 |
|
然后安装依赖,安装完成就能启动简单的hexo项目了
1 |
|
hexo版本更新
默认支持版本为4.2.1+,可以通过下面命令更新
1 |
|
开启菜单
首先需要修改显示的菜单配置,配置信息如下,默认全显示,如不想使用某个菜单可以注释或者删除
1 |
|
开启categories
1 |
|
在hexo-theme-prowiki-demo/_config.yml中添加以下内容(可选,有默认值)
1 |
|
在文章内容中添加分类,然后需要重启hexo服务,重启后categories菜单就可以正常访问了
开启tags
1 |
|
其他步骤和categories的基本相同,不同的是配置信息如下
1 |
|
开启friends
1 |
|
然后编辑/source/friends/index.md,内容和post相同,增加了links友链信息属性,具体格式见 友情链接
开启about
1 |
|
然后编辑/source/about/index.md即可,和普通的post一样,区别是有单独的url
修改配置信息
hexo-abbrlink
可选的个人建议插件
1 |
|
然后需要修改配置信息
1 |
|
已有的文章可以hexo s
启动服务后打开文章Ctrl+S自动生成一下
hexo-filter-image
当Hexo配置文件的属性root值变化时,无需改变Markdown内容的图片地址,此插件会自动将图片映射成绝对路径
1 |
|
1 |
|
服务重启前最好hexo clean
一下
hexo-blog-encrypt
可选的文章加密插件
1 |
|
然后需要添加配置信息如下
1 |
|
在想要加密的文章头部添加password值即可,或者可以通过上面的配置为有某标签的文章自动加密
hexo-plugin-gitalk(评论)
gitalk是一个基于Github Issue的评论插件。由于面向的是技术博客,这个留言的实现方式很舒服。
1 |
|
- 在github创建一个repository,或者使用已存在的仓库
- 创建一个application用于用户授权,创建成功后可以得到Client ID和Client Secret。callback URL配置为博客的网址,本地调试时可设置为
http://localhost:4000/hexo-theme-prowiki-demo/
。后续可在Settings - Developer settings - OAuth Apps
中找到
然后把得到的参数填写到下面配置中,更多配置参数详见gitalk
1 |
|
如果需要开启某一篇文章的评论,需要在文章中使用管理者账号登陆一下(会自动创建Issue),否则会显示“请联系@owner初始化创建”
建议修改的配置信息
主题中的配置文件很通俗易懂,还有详细的注释,这里说一下根目录配置文件中的一些配置项
1 |
|
post.md
1 |
|
其他说明
自动生成的文章“Hello World”中代码样式有问题是因为
1 |
|
写在最后
下面是一些没用的话
主题制作目的
想写一些类似wiki、说明书、操作手册之类有较强类别区分的说明性文章,模板要支持多功能分类,还要卸去浮华,不要一切花里胡哨。
官方主题库里没有找到合适的,一时手贱就随便写了这个。
作为一个非专业的业余前端开发,自己做的再丑也要以为妙极。
取个名字吧
原本想写一些web漏洞、软件破解、硬件利用的文章所以以黑色为主色调,示例博客名字就叫
HTW:hack the world
wiki的名字被占用了,所以添字母后主题就叫 ProWiki ,全名:hexo-theme-prowiki
需求设计
- 强化分类和标签的使用
- 文章内标题有锚点
- 风格简约,文字清晰,代码舒适
菜鸟开发笔记
- hexo实际上只有三个主页面:index(首页)、post(文章内容)、archive(归档),新建page默认解析到post(default_layout配置项)
- 添加自定义页面需要先
hexo new page "page-path"
,然后在theme/layout根目录下添加page-path.ejs,最后在post中添加判断解析index.html
参考链接
- Hexo官方文档
- Hexo主题开发
- CSS3实现多种背景效果
- 解决锚点链接跳转后位置上下偏移的偏移的办法
- 原生js 平滑滚动到页面的某个位置
- html锚点 偏移问题
- JS:目录跟随定位效果的实现及锚点中使用name和id定位的区别
版权声明:本文为「阿巴阿巴」的原创文章,博客内容遵循 署名-非商业性使用-相同方式共享 协议。
本文永久链接是:https://demo.wujiaxing.com/prowiki/about/index.html