快速搭建博客:美化主题

文章目录

    • 其他搭建
    • 1. 添加博客图标
    • 2. 鼠标点击特效(二选一)
      • 2.1 红心特效
      • 2.2 爆炸烟花
    • 3. 设置头像
    • 4. 侧边栏社交小图标设置
    • 5. 文章末尾的标签图标修改
    • 6. 访问量统计
    • 7. 添加站内搜索
    • 8. 启动阅读更多按钮
    • 9. 文章顶置(二选一,看看哪种简单)
      • 9.1 方法一
      • 9.2 方法二
    • 10. 在文章底部增加版权信息
      • 10.1 方式一
      • 10.2 方式二(比较麻烦,但是好看)
    • 11. 添加打赏
    • 12. 文章加密访问
    • 13. 启动代码复制按钮
    • 14. 在Footer添加站点运行时间
    • 15. 实现文章统计功能
    • 16. 修改博文目录
    • 17. RSS订阅(非必要)
    • 18. GitHub Fork Me
    • 19. bookmark
    • 20. 添加lazyload(跟后面的图片点击全屏看不能共存)
    • 21. 显示当前浏览进度(两者可共存)
      • 21.1 方式一
      • 21.2 方式二
    • 22. Footer / 页脚设置
    • 23. 添加Valine评论
      • 23.1. 注册LeanCloud
      • 23.2. 创建应用
      • 23.3. 设置Web安全域名,填入自己的域名
      • 23.4. 获取APP ID 和 APP Key
    • 24. Vline邮箱评论通知
    • 25. Valine 头像设置
    • 26. 添加文章阅读次数
    • 27. Url 持久化
    • 28. nofollow 标签的使用
    • 29. 取消“文章目录”的自动编号
    • 30. 背景(不要共存)
      • 30.1 雨代码(就是我当前用的这样)
      • 30.2 自定义背景图
      • 30.3 其他背景
    • 31. 浏览器网页标题恶搞(转,有贴转载地址)
    • 32. 一些样式
    • 33. 一些修改
    • 34. 相关文章推荐
    • 35. 文章底部添加评分小星星

其他搭建

请先观看前几篇博客
hexo4快速搭建博客(一)快速搭建一个博客
hexo4快速搭建博客(二)更换主题
其他博文:
hexo4快速搭建博客(四)写作技巧包含图床和自动变图床的插件
hexo4搭建博客系列(五)优化博客(无坑) 部署到阿里云
hexo4搭建博客系列(六)百度,必应,谷歌收录(无坑)

然后下面这篇博文的美化几乎很全,我自己也在用,如果有错评论指出,写得多自己脑子乱乱的。
我用的版本是 hexo4.0 + NexT7.6版本。我的个人博客

1. 添加博客图标

如:1

在主题目录下_config.yml文件查询 favicon,只需要修改前两个:small和medium,图片的像素得为16像素和32像素

favicon:
  small: /images/favicon-16x16-next.png
  medium: /images/favicon-32x32-next.png
  apple_touch_icon: /images/apple-touch-icon-next.png
  safari_pinned_tab: /images/logo.svg
  #android_manifest: /images/manifest.json
  #ms_browserconfig: /images/browserconfig.xml

你可以看到这两个属性的值,/images其实完整的路径为:themes/next/source/images 这条路径来定位的。

也可以定义外部URI。

可以去图标素材:iconfont,easyicon。中下载16x16和32x32大小的PNG格式图片,然后放到themes/next/source/images下。

可以得出,要在主题某处添加什么图片都可以放在这个目录下。

2. 鼠标点击特效(二选一)

2.1 红心特效

刚刚说了主题图片可以放在themes\next\source\images,而themes\next\source有一个js文件,我们在themes\next\source\js\src(如果没有就自己创建) 下新建文件clicklove.js,然后把下面的代码copy到该文件中。

!function(e,t,a){
   function n(){
   c(".heart{width: 10px;height: 10px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.heart:after,.heart:before{content: '';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}"),o(),r()}function r(){
   for(var e=0;e<d.length;e++)d[e].alpha<=0?(t.body.removeChild(d[e].el),d.splice(e,1)):(d[e].y--,d[e].scale+=.004,d[e].alpha-=.013,d[e].el.style.cssText="left:"+d[e].x+"px;top:"+d[e].y+"px;opacity:"+d[e].alpha+";transform:scale("+d[e].scale+","+d[e].scale+") rotate(45deg);background:"+d[e].color+";z-index:99999");requestAnimationFrame(r)}function o(){
   var t="function"==typeof e.onclick&&e.onclick;e.onclick=function(e){
   t&&t(),i(e)}}function i(e){
   var a=t.createElement("div");a.className="heart",d.push({
   el:a,x:e.clientX-5,y:e.clientY-5,scale:1,alpha:1,color:s()}),t.body.appendChild(a)}function c(e){
   var a=t.createElement("style");a.type="text/css";try{
   a.appendChild(t.createTextNode(e))}catch(t){
   a.styleSheet.cssText=e}t.getElementsByTagName("head")[0].appendChild(a)}function s(){
   return"rgb("+~~(255*Math.random())+","+~~(255*Math.random())+","+~~(255*Math.random())+")"}var d=[];e.requestAnimationFrame=function(){
   return e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(e){
   setTimeout(e,1e3/60)}}(),n()}(window,document);

然后在\themes\next\layout_layout.swig文件末尾添加:

<!-- 页面点击小红心 -->
<script type="text/javascript" src="/js/src/clicklove.js"></script>

2.2 爆炸烟花

在themes\next\source\js\src(如果没有就自己创建) 下新建文件firework.js,然后把下面的代码copy到该文件中。

"use strict";function updateCoords(e){
   pointerX=(e.clientX||e.touches[0].clientX)-canvasEl.getBoundingClientRect().left,pointerY=e.clientY||e.touches[0].clientY-canvasEl.getBoundingClientRect().top}function setParticuleDirection(e){
   var t=anime.random(0,360)*Math.PI/180,a=anime.random(50,180),n=[-1,1][anime.random(0,1)]*a;return{
   x:e.x+n*Math.cos(t),y:e.y+n*Math.sin(t)}}function createParticule(e,t){
   var a={
   };return a.x=e,a.y=t,a.color=colors[anime.random(0,colors.length-1)],a.radius=anime.random(16,32),a.endPos=setParticuleDirection(a),a.draw=function(){
   ctx.beginPath(),ctx.arc(a.x,a.y,a.radius,0,2*Math.PI,!0),ctx.fillStyle=a.color,ctx.fill()},a}function createCircle(e,t){
   var a={
   };return a.x=e,a.y=t,a.color="#F00",a.radius=0.1,a.alpha=0.5,a.lineWidth=6,a.draw=function(){
   ctx.globalAlpha=a.alpha,ctx.beginPath(),ctx.arc(a.x,a.y,a.radius,0,2*Math.PI,!0),ctx.lineWidth=a.lineWidth,ctx.strokeStyle=a.color,ctx.stroke(),ctx.globalAlpha=1},a}function renderParticule(e){
   for(var t=0;t<e.animatables.length;t++){
   e.animatables[t].target.draw()}}function animateParticules(e,t){
   for(var a=createCircle(e,t),n=[],i=0;i<numberOfParticules;i++){
   n.push(createParticule(e,t))}anime.timeline().add({
   targets:n,x:function(e){
   return e.endPos.x},y:function(e){
   return e.endPos.y},radius:0.1,duration:anime.random(1200,1800),easing:"easeOutExpo",update:renderParticule}).add({
   targets:a,radius:anime.random(80,160),lineWidth:0,alpha:{
   value:0,easing:"linear",duration:anime.random(600,800)},duration:anime.random(1200,1800),easing:"easeOutExpo",update:renderParticule,offset

你可能感兴趣的:(hexo,hexo,博客,搭建博客,美化)