Hexo部署出现错误err: Errr: Span failed解决方式
部署过程中可能会出现错误
123456789fatal: unable to access 'https://github.com/a956551943/a956551943.github.io/': Encountered end of fileFATAL { err: Error: Spawn failed at ChildProcess.<anonymous> (/usr/local/src/hexo/hanyubolg/node_modules/hexo-util/lib/spawn.js:51:21) at ChildProcess.emit (events.js:376:20) at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12) { code: 128 }} Something's wrong. Maybe you can find the solution ...
mysql create database 指定utf-8编码
如下脚本创建数据库yourdbname,并制定默认的字符集是utf8。
1CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
如果要创建默认gbk字符集的数据库可以用下面的sql:
1create database yourdb DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;
Hexo博客技巧,对文章进行加密
前言
你可能需要写一些私密的博客, 通过密码验证的方式让人不能随意浏览.
这在 wordpress, emlog 或是其他博客系统中都很容易实现, 然而 hexo 除外. 😦
hexo-blog-encrypt插件就能很好地解决这个问题.
特性
一旦你输入了正确的密码, 它将会被存储在本地浏览器的 localStorage中. 按个按钮, 密码将会被清空. 若博客中又脚本, 它将会被正确地执行.
支持按标签加密.
所有的核心功能都是由原生的 API 所提供的. 在 Node.js中, 我们使用 Crypto. 在浏览器中, 我们使用 Web Crypto API.
PBKDF2, SHA256 被用于分发密钥, AES256-CBC 被用于加解密, 我们还使用 HMAC 来验证密文的来源, 并确保其未被篡改.
我们广泛地使用 Promise 来进行异步操作, 以此确保线程不被杜塞.
加密页面多主题支持, 现在已经支持的主题有 [default, xray], 更多的主题正在开发中.
过时的浏览器将不能正常显示, 因此, 请升级您的浏览器.
在线演示
点击 Demo Page ...
前端性能优化之WebP图片
前言前端性能涉及方方面面, 根据优化角度切入点的不同可以分为页面工程优化和代码细节优化两大方向。
页面工程优化: 从页面请求开始, 涉及网络协议、 资源配置、 浏览器性能、 缓存等;代码细节优化: JavaScript 对 DOM 操作等。今天要介绍的是一种叫WebP格式的图片。
WebP介绍WebP 是由Google开发的一种新的图片格式,它支持有损压缩、无损压缩和透明度,压缩后的文件大小比JPEG、PNG等都要小。诸多的好处使它成为了当下前端性能优化的重要切入点之一。
使用WebP由于之前的一个项目中大量的使用了图片,这就让图片资源的优化成为了整个项目性能优化的瓶颈。虽然图片懒加载对性能有一定的提升,但是为了让性能得到更大的提升,我调研并应用了 WebP 格式图片进行替换。
WebP 的兼容性还不是很好,不过好在它兼容 Chrome,以及 Android 的 webview。因为不是所有浏览器都支持 WebP 格式,为了解决问题,我进行了多种尝试
要么确保在支持 WebP 格式的浏览器中使用,要么让不支持 WebP 的浏览器支持这种格式。
为了让 WebP 可以应用到支持它的浏览器 ...
css3中的animation属性
12345678910111213141516<!DOCTYPE html><html> <head> <style> div{width:100px;height:100px;background:red;animation:my 5s;} @keyframes my { 0%{background:red;width:100px;} 100%{background:blue;width:200px;} } </style> </head> <body> <div></div> </body></html>
最常用的几种属性有以下几种:1、animation-name(动画名称)
anim ...
wordpress高级动作函数
部分介绍的都是与WordPress查询(决定该显示哪一篇日志)、WordPress主循环、激活插件以及WordPress基础代码相关的动作函数。
admin_menu
控制板中的菜单结构显示无误后,执行此动作函数。
admin_notices
管理菜单显示在页面上时执行此动作函数。
blog_privacy_selector
博客默认隐私选项显示在页面上时,执行此动作函数。
check_admin_referer
系统出于安全考虑检查随机数后在默认函数check_admin_referrer中执行check_admin_referer动作钩子,使插件因安全原因而强制WordPress停止运行。注意:check_admin_referrer也是一个“插入式”函数,即插件可以改写该函数;参见插件API。
check_ajax_referer
系统从cookies中成功验证用户的登录名和密码后,在默认函数 check_ajax_referer(这是在有AJAX请求进入wp-admin/admin-ajax.php脚本时所调用的函数)中执行此动作函数,使插件能够因安全原因强制Word ...
使用hexo theme Butterfly 报错
直接用github上作者提供的代码
1git clone -b master [https://github.com/jerryc127/hexo-theme-butterfly.git](https://github.com/jerryc127/hexo-theme-butterfly.git) themes/Butterfly
结果是页面根本无法正常渲染,只有一行字:
1extends includes/layout.pug block content include ./includes/mixins/post-ui.pug #recent-posts.recent-posts +postUI include includes/pagination.pug
问题解决参照原作者提供的文章Butterfly
按照方法安装npm install hexo-renderer-pug hexo-renderer-stylus --save然后打开
Hexo添加分类和标签
1、创建“分类”选项1.1 生成“分类”页并添加tpye属性打开命令行,进入博客所在文件夹。执行命令
1hexo new page categories
成功后会提示:
1INFO Created: ~/Documents/blog/source/categories/index.md
根据上面的路径,找到index.md这个文件,打开后默认内容是这样的:
1234---title: 文章分类date: 2022-01-07 22:53:43---
添加type: "categories" layout: "categories"到内容中,添加后是这样的:
123456---title: 文章分类date: 2022-01-07 22:53:43type: "categories"layout: "categories"---
保存并关闭文件。
1.2 给文章添加“categories”属性打开需要添加分类的文章,为其添加categories属性。下方的categories: web前端表示添加这 ...
wordpress开发api之钩子大全
本文着重介绍了“钩子”的应用程序接口,这里的钩子又被称为“过滤器”和“动作”。WordPress通过钩子来运行插件。这些钩子也可以用在主题中,WordPress中插件开发人员可以使用的API(应用程序接口)钩子(hook)进行扩展开发
钩子,动作与过滤器
WordPress用钩子将插件“勾进”WordPress系统中,让插件与WordPress相连接。也就是说,通过钩子,WordPress能够在特定时间内调用插件中的函数,让插件开始运行。下面是钩子的两种形式:
动作(Actions):在系统运行的某些特定时间点或发生特定事件时,WordPress核心程序会调用一些钩子。这里WordPress所调用的钩子被称为“动作”。插件用动作API来指定在上述特定时间点内需要执行的PHP函数。
过滤器(Filters):WordPress将不同类型文本添加到数据库或发送给浏览器窗口前,需要调用一些钩子来修改上述不同类型文本。这里WordPress所调用的钩子被称为“过滤器”。通过使用滤器API,插件可以执行一个或多个PHP函数以修改上述不同类型文本。
有时我们可以直接通过动作 ...
Nodejs,express和websocket实现即时通讯
628c584cc0ca60eede7bfc6fe7f8cd076cadbae2acd8a685f6922adb126aff1bb7ab91be1845670be9b84411f65849307c3a8e2ed9f83d21d7cb88d59a94f0fb06cee1784a7f066422f34ecf054311db7db1773e8caf993dbc4e52b84196289580764d094bb2837ee01fddb3a657ed4d0f4c997d0ba5cabb8e6ec399f2c53031584cdfef840dfde5f8e52a064e799f7d01a49143b1588b3a5eb722ea5cf6b68159460299bbe85140fb1b2db0addb138a2f4110878675eebc8ac6f631cf0b3e5bade285857ce5ab24d36eb760cec42897ca288af8c8733745f584dcb78a41cfaa73ac677746b9d9297094197251a078a1f3ffd06188b295c70 ...