Hexo-matery主题性能优化

   日期:2024-12-27    作者:cnddmy 移动:http://oml01z.riyuangf.com/mobile/quote/59297.html

大家可以来我Hexo博客主页看看具体效果,欢迎留言评论 传送门

Hexo-matery主题性能优化

文章生成永久链接

原来的文章链接地址会出现一大串字符编码,不好看,而给文章生成永久链接有利于SEO,给更加美观

首先安装插件

 

再站点配置文件下添加如下配置

 

将站点配置文件的 permalink 的值修改为

使用图片懒加载需要安装插件:hexo-lazyload-image

 

之后在站点配置文件下添加下面的代码

 

存在问题

查看大图,发现全部为 loading 加载图,原因是因为懒加载插件与 lightgallery 插件冲突,解决办法如下

修改主题文件下的 matery.js,在 108 行左右添加以下代码

 

懒加载优化

打开 Hexo根目录 >node_modules > hexo-lazyload-image > lib > simple-lazyload.js 文件

第 9 行修改为

 

作用:提前 240 个像素加载图片;当然这个值也可以根据自己情况修改

代码压缩

gulp 代码压缩

因为 hexo 生成的 html、css、js 等都有很多的空格或者换行,而空格和换行也是占用字节的,所以需要将空格换行去掉也就是我要进行的 “压缩”。

进入站点根目录下依次执行下面的命令

 

在 Hexo 根目录新建文件 gulpfile.js,并复制以下内容到文件中,有中文注释,可以根据自己需求修改。(注意:文件名不能错,一定为 gulpfile.js,否则会出错

 

直接在 Hexo 根目录执行 gulp 或者 gulp default ,这个命令相当于 hexo cl&&hexo g 并且再把代码和图片压缩。
在 Hexo 根目录执行 gulp build ,这个命令与第 1 种相比是:在最后又加了个 hexo d ,等于说生成、压缩文件后又帮你自动部署了

如果不想用图片压缩可以把第 154 行的 “compressImage”, 和第 165 行的 ,“compressImage” 去掉即可

添加 Valine 评论系统

Valine 官方文档

如果注册过 LeanCloud,请点击此处进行登录,未注册的请点击注册

步骤

  1. 首先创建一个云存储开发版,名称自定义

  2. 在“设置“,”应用 Keys”,找到你的appid和appke,配置到主题中valine配置的地方,启用valine

     

    然后执行相关部署命令,查看效果即可

  3. 在“设置“,”安全中心”,”Web 安全域名”,添加自己的域名。

  4. 有些属性调整了,主题下的_config.yml的valine属性如下

     
    
    修改valine.ejs

    Matery 主题使用的ejs模板预编译,在主题目录下的layout_partial/valine.ejs中修改,原始为

     
    

    修改后为

     
    

    验证昵称和邮箱可以加上以下代码

     
    

    填写昵称邮箱和网址的地方样式修改

     
    
    增强 Valine 的邮件通知

    开始部署项目

    依次点击左侧的云引擎 -> 部署 -> 项目部署 ->Git 部署 -> 配置 Git。然后 Git 的地址填写:https://github.com/sviptzk/Valine-Admin-Server。然后再次点击 Git 部署 -> 部署即可

    绑定评论管理的域名

    国区版LeanCloud 不给予免费的二级域名了,因此必须绑定备案域名。

    国际版LeanCloud 给予一个免费的二级域名。

    设置域名白名单

    域名可设置多个,一行一个。需要写协议头。

    主题说明default默认主题rainbow原版的 rainbowcustom1基于🎉梨花町の肾兄さん🎉的模板custom2对 custom1 的改进版

    添加完成后,点击保存。并且重新部署实例。

    登录后台为刚刚设置的后台域名,如果登录不上则在域名后面加上/sign-up

    微信公众号通知

    首先需要到 server 的官网,开启微信提醒并获取 SCKEY。

    官网写的很详细,这里不在过多赘述

    防止服务器休眠

    关于自动休眠的官方说法:点击查看

    关于服务器休眠唤醒的问题,以前的方法是通过自带的定时任务进行唤醒,但现在不可以了,因为官方进行限制了。因此使用的是 GitHub+Actions

    进入自己的Github首页–>右上角settings–>左下角Developer settings–>选择 Personal access tokens–>Generate new token

    接下来 FORK 项目。

    地址:https://github.com/blogimg/WakeLeanCloud

    至于重发函数,还是和往常一样,但由于流控限制,因此最好能保证重发时机器是活着的。不然很可能会触发因流控原因,通过定时任务唤醒体验版实例失败,建议升级至标准版云引擎实例避免休眠

    选择 resend-mails 云函数,Cron 表达式为 ,表示每天早 8 点 20 分检查过去 24 小时内漏发的通知邮件并补发(请尽量确保你设置的时间机器是醒着的

    GitHub评论系统

    可以先去这个地方看一下 Gitalk 的效果 传送门

    1.    
       
       
       
      

      手动提交即手动地将链接一次性提交给百度。自动提交有:主动推送,自动推送,sitemap。主动推送需要安装相关插件,自动推送Metary主题已经自带了,并且默认开启,sitemap提交填写文件地址即可

      安装相应的站点地图插件
       
      

      这两个插件是用来生成 的插件,而 是用来告知搜索引擎我们的网站上有哪些可供抓取的网页的。

      hexo配置文件中的url一定要改成你的域名,这两个插件是根据你的url生成站点地图的

      安装后直接执行命令,然后就会在网站根目录生成文件和,其中文件是搜索引擎通用的文件,是百度专用的文件。

      使用sitemap方式推送

      有之后,再将生成的提交给百度或者其他搜索引擎

      百度方式:在普通收录,资源提交的sitemap那里填写自己的URL地址即可

       
       
      

      提交后会有状态提示

      这里需要注意严格区分http和https

      自动推送方式

      只要每个需要被百度爬取的HTML页面中加入一段JS代码即可

       
      

      matery主题可以自动给每个页面加上这段代码,只需在主题配置文件中配置

       
      
      主动推送方式

      安装主动推送插件:hexo-baidu-url-submit

       
      

      然后打开,在末尾加入以下配置

       
      

      密匙的获取是在百度的自动提交的主动推送那里。

      再加入新的

       
      

      如图

      这样每次执行 的时候,新的链接就会被推送了。
      推送成功时,会有如下终端提示!

      如图39个链接推送成功

      谷歌收录

      同样可以在百度搜索引擎中输入:来查看网站是否被收录

      (就是验证下网站是不是你的)就是域名解析那里添加一条TXT解析记录

      然后点击验证即可

      再到谷歌的Search Console,添加自己的地址查看


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号