前言 经历了好几天(懒癌晚期懒得数了)的与主题升级斗争后,我终于完成基本上完成了next主题的升级!升到了V7.3!哈哈哈哈哈哈隔,我一个小白干这事干嘛呀我....这不是自讨苦吃嘛... 所以我来劝劝你们不要升级了,因为Next主题还是6.X版本稳定(而且作者说会继续支持)教程也多,想要抄代码的朋友建议不要学我瞎折腾了。(呜呜呜我失去了抄代码的机会) 如果您也不经意的升级了7.X主题,不慌,或许我能救救你??? 建议选择稳定版本.png 如何正确升级Next主题 注意:更新有风险,一定要谨慎处理文件中冲突的部分!另,如果更新 NexT 主题后,配置文件有些新功能不会配置,可以查看官方介绍 页面,去里面找说明。 参考 官方教程 官方教程-从 v5.1.x 更新到 v6.0.x 以下参考与官方教程有误的请以官方教程为准,慎重操作 打造个性超赞博客 Hexo + NexT + GitHub Pages 的超深度优化 | reuixiy Hexo 升级及 Next 主题升级 | 💕秋秋 Nemo 下载最新发布版本,获得主题源码 参考,必看! 使用curl,tar和wget安装 $ mkdir themes / next $ curl -s https://api.github.com/repos/theme-next/hexo-theme-next/releases/latest | grep tarball_url | cut -d ' “ ' - f 4 | wget -i - -O- | tar -zx -C themes / next --strip-components = 1 这种方式将仅提供最新的发布版本(其中不附带.git目录)。 因此,将来你将不能通过git更新这一方式安装的主题。 取而代之的,为了能不丢失你的自定义配置,你可以使用独立的配置文件(例如数据文件)并下载最新版本到旧版本的目录中(或者下载到新的主题目录中并修改Hexo配置中的主题名)。 下载标签指向的发布版本 使用git安装:$ git clone --branch v6.0.0 https://github.com/theme-next/hexo-theme-next themes / next 这一方式将为你下载指定的release版本(其中包含.git目录)。 并且,你可以随时切换到任何已定义的版本号所对应的标签的版本。 我的操作(很迷,慎重模仿) 打开这里 ,拉到底,下载zip保存到任意位置。 下载7.3.png 解压到 ~\themes 里,并随便改名(建议 next-reloaded ,下文同,不要问我为什么:)) 原因↓出处 改名next-reloaded.png 如果一切正常的话,你会在 ~\themes 得到这样一个文件结构(没安装过别的主题的话) 文件结构.png 最后一步,打开你的站点_config.yml文件 搜索关键词 theme: 将原来的旧主题指向新主题 theme: next-reloaded # 新主题,如果你没把文件夹命名为next-reloaded,这里填你自己的名字,下同不再提醒 主题配置-填坑 OK,无论如何你都已经获得了主题源码,别着急你还有很多坑要填呢。 语言 Next v7.X主题 中文语言设置,已经从 zh-Hans 更换为 zh-CN ,在站点_config.xml 更新。 (如果你连这个都不知道在哪改,求求你给我个理由...为什么要作死更新) Next v7.X主题-语言修改.png 扩展页面内容宽度 反正我没出现这个问题。有问题的话可以参考这里 主题_config.xml搬家 简单来说,就是将站点配置平移过去。这里列举一下大部分需要修改的地方和新功能(可能有遗漏,请自行检查) 操作: 同时打开(旧)next主题_config.xml、(新)next-reloaded主题_config.xml文件,然后一项项对比就好了。 小窍门 你可以将next-reloaded主题_config.xml文件,Ctrl+A,Ctrl+C全部复制一份,然后粘贴到百度翻译一项项看,能理解快速很多,再对比原来的文件修改就好了。(大佬、学霸轻喷) Next v7.X主题-小窍门.png 平移-Menu(菜单)配置 直接从旧主题配置 _config.yml 文件复制过来就好了。 ①打开旧主题配置 _config.yml 文件,搜索关键词 menu:,复制 ②打开新主题配置 _config.yml 文件,搜索关键词 menu:,粘贴 (这是我的,别看都不看照抄...) Next v7.X主题-菜单配置.png 记得把下面的图标打开 # Enable / Disable menu icons / item badges. menu_settings: icons: true badges: true 平移-主题方案选择 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 scheme: 将你原来选择的方案前面的 # 号去掉或者加上即可。 平移-侧栏社交地址和友链平移 侧栏社交地址: 直接从旧主题配置 _config.yml 文件复制过来就好了。 ①打开旧主题配置 _config.yml 文件,搜索关键词 social:,复制 ②打开新主题配置 _config.yml 文件,搜索关键词 social:,粘贴 (这是我的,别看都不看照抄...) Next v7.X主题-侧栏社交地址配置.png 友链: 同上,直接从旧主题配置 _config.yml 文件复制过来就好了。 ①打开旧主题配置 _config.yml 文件,搜索关键词 links:,复制 ②打开新主题配置 _config.yml 文件,搜索关键词 links:,粘贴 侧栏配置 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 sidebar::,设置即可。 sidebar: # Sidebar Position. #position: left //左 position: right //右 # Manual define the sidebar width. If commented, will be default for: # Muse | Mist: 320 # Pisces | Gemini: 240 #width: 300 # Sidebar Display (only for Muse | Mist), available values: # - post expand on posts automatically. Default.有目录时自动展开 # - always expand for all pages automatically.始终自动展开所有页面 # - hide expand only when click on the sidebar toggle icon.仅当单击侧边栏切换图标时展开 # - remove totally remove sidebar including sidebar toggle.完全删除侧边栏,包括侧边栏切换 display: hide //从上面选一个填就好了 站点logo配置 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件 favicon: small: 改为你的logo地址或者本地路径即可 medium: 改为你的logo地址或者本地路径即可 关键词设置 建议直接复制站点_config.xml文件里的 keywords: 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件 keywords: "奥怪的小栈" // 改为你的关键词即可 文章底部版权开启 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 creative_commons: 里的 sidebar: 改为 true 即可。 # Creative Commons 4.0 International License. 版权 # See: https://creativecommons.org/share-your-work/licensing-types-examples # Available values of license: by | by-nc | by-nc-nd | by-nc-sa | by-nd | by-sa | zero # You can set a language value if you prefer a translated version of CC license, e.g. deed.zh # CC licenses are available in 39 languages, you can find the specific and correct abbreviation you need on https://creativecommons.org creative_commons: license: by-nc-sa sidebar: true post: true language: 开启打赏功能 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 reward_settings: 里的 enable: 改为 true 即可。 # Reward (Donate) reward_settings: # If true, reward would be displayed in every article by default. # You can show or hide reward in a specific article throuth `reward: true | false` in Front-matter. enable: true //开启 animation: false comment: 这里填你的提示语 reward: wechatpay: upload/201909091627110437.png // 微信支付,这里换成你的收款码地址或者路径即可 alipay: upload/201909091627110437.png // 支付宝支付,这里换成你的收款码地址或者路径即可 #bitcoin: /images/bitcoin.png // 比特币支付,这里换成你的收款码地址或者路径即可 SEO设置 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 # SEO Settings 改相关配置即可。 我的借你参考一下 # Disable Baidu transformation on mobile devices. disable_baidu_transformation: true //禁用移动设备上的百度转换,建议 true # Set a canonical link tag in your hexo, you could use it for your SEO of blog. # See: https://support.google.com/webmasters/answer/139066 # Remember to set up your URL in Hexo `_config.yml` (e.g. url: http://yourdomain.com) canonical: true //规范的链接标签,建议 true # Change headers hierarchy on site-subtitle (will be main site description) and on all post / page titles for better SEO-optimization. # 更改网站副标题(将是主要网站描述)和所有文章/页面标题的标题层次结构,以便更好地优化SEO。 seo: true //建议 true # If true, will add site-subtitle to index page. # Remember to set up your site-subtitle in Hexo `_config.yml` (e.g. subtitle: Subtitle) index_with_subtitle: true //带副标题的索引,开启后会在标签标题后面自动加上网站名称,建议 true # Automatically add external URL with Base64 encrypt & decrypt. exturl: false # Google Webmaster tools verification. # See: https://www.google.com/webmasters ←参考 google_site_verification: //谷歌网站管理员工具验证 # Bing Webmaster tools verification. # See: https://www.bing.com/webmaster ←参考 bing_site_verification: //必应Bing网站管理员工具验证 # Yandex Webmaster tools verification. # See: https://webmaster.yandex.ru ←参考 yandex_site_verification: //Yandex网站管理员工具验证 # Baidu Webmaster tools verification. # See: https://ziyuan.baidu.com/site ←参考 baidu_site_verification: //百度站长工具验证 # Enable baidu push so that the blog will push the url to baidu automatically which is very helpful for SEO. #启用百度推送,这样博客会自动把网址推到百度,这对SEO很有帮助。 baidu_push: true //建议 true 新功能-博主头像圆形并旋转 在之前的版本里面得自定义才能达到,现在已经可以直接配置了。 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 avatar: 修改相应配置即可。 avatar: # In theme directory (source/images): /images/avatar.gif //图片在主题目录中,去掉前面#号,改为直接的路径 # In site directory (source/uploads): /uploads/avatar.gif //图片在主题目录中,去掉前面#号,改为直接的路径 # You can also use other linking images.您也可以使用其他链接图像 url: upload/201909091627121415.png //使用网络图片 # If true, the avatar would be dispalyed in circle. rounded: true //开启后,头像为圆形 # If true, the avatar would be rotated with the cursor. rotated: true //开启后,头像获得光标时旋转 新功能-背景开启帆布窝或帆布色带 文件路径: ~\themes\next-reloaded\_config.yml 自行修改相关参数即可 帆布窝: canvas_nest: enable: false //打开改为:true onmobile: true # display on mobile or not是否在移动设备上显示 color: "0,0,255" # RGB values, use `,` to separate(rgb值,使用`,`分隔) opacity: 0.5 # the opacity of line: 0~1 线条不透明度:0~1 zIndex: -1 # z-index property of the background count: 99 # the number of lines 数量 效果: 帆布窝效果 帆布色带: canvas_ribbon: enable: false //打开改为:true size: 300 # The width of the ribbon 宽度 alpha: 0.6 # The transparency of the ribbon 透明度 zIndex: -1 # The display level of the ribbon 效果: 帆布色带效果 新功能-生成hexo后删除不必要的文件 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 minify: 改为 true 即可。 新功能-站点创立时间设置 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 footer: 修改相关数据 即可。 (这部分我好像自定义过,如果跟我不一样的不要自行添加代码,修改你有的部分就行) Next v7.X主题-站点创立时间设置.png 新功能-年份和版权信息之间的图标 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 icon: 修改相关数据即可。 (这部分我好像自定义过,如果跟我不一样的不要自行添加代码,修改你有的部分就行) # Icon between year and copyright info. icon: # Icon name in Font Awesome. See: https://fontawesome.com/v4.7.0/icons/ # `heart` is recommended with animation in red (#ff0000). name: heart # user # If you want to animate the icon, set it to true. animated: true # Change the color of icon, using Hex Code. color: "#ff0000" # If not defined, `author` from Hexo `_config.yml` will be used. copyright: by 奥怪的小栈 新功能-备案号 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 beian: 修改相关数据即可。 # Beian ICP information for Chinese users. See: http://www.beian.miit.gov.cn beian: enable: false icp: 如何美化、优化 这里只介绍一下我在用的配置。其他配置可以通过查看 _config.yml 配置文件 自行测试。 代码块复制功能 开启 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 codeblock: 修改相关数据即可。 codeblock: # Code Highlight theme # Available values: normal | night | night eighties | night blue | night bright //这些都是样式 # See: https://github.com/chriskempson/tomorrow-theme highlight_theme: night //从上面选一个样式 # Add copy button on codeblock 在代码块上添加复制按钮 copy_button: enable: true //开启 # Show text copy result. show_result: true # Available values: default | flat | mac //默认风格,选一个填下去就好了 style: mac Follow me on GitHub功能 开启 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 github_banner: 修改相关数据即可。 # `Follow me on GitHub` banner in the top-right corner. github_banner: enable: true // 开启 permalink: https://github.com/aoguai //这里改成你的github地址 title: Follow me on GitHub //提示语 来必力评论功能 开启 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 livere_uid: 这里填你的来必力UID即可 如果你还不知道评论功能,请看旧版的教程 ,使用方法是一样的。 分享功能 开启 参考 addthis分享 首先打开官网 ,注册账号(由于我注册过了,就不再截图演示了,注册过程有什么不懂的地方翻译一下基本就能搞懂了) 然后新创建一个工具(右上角添加) addthis分享.png 然后,选第一个就好了。 addthis分享2.png 你可以任意选择一个你喜欢的样式(不建议选弹框类型的...) addthis分享3.png 我选了Expanding,还可以设置其他配置,比如,位置啊,颜色啊什么的,看不懂英文的朋友可以翻译插件翻译一下。就不一一截图了。 addthis分享4.png 设置完后,回到工具页面,点击右上角获得代码,复制你的ID addthis分享5.png 路径 ~\themes\next-reloaded\_config.yml 打开新主题配置 _config.yml 文件,搜索关键词 add_this_id: 这里填你的ID即可 Likely Share分享 这个分享按钮是在每篇文章底部的。 感兴趣的朋友可以直接看官方教程 和 官网 自己捣鼓一下就能完成啦其实是我太懒了 NeedMoreShare2分享 同上 依赖项 教程 如果三种分享都注册并使用的话,效果是这样的。 分享效果.png 站点字体美化 推荐直接参考这篇文章 最新用法 另外说一下,next主题默认字体大小的修改方法。 路径: ~\themes\next-reloaded\source\css\_variables\base.styl 打开 base.styl 文件,搜索关键词 // Font size,修改成你希望的大小即可。em是相对大小,对移动端有好处,不建议使用px 下面是我的配置: // Font size $font-size-base = 1em //基准 $font-size-base = unit(hexo-config('font.global.size'), em) if hexo-config('font.global.size') is a 'unit' $font-size-smallest = 0.8125em //最小 $font-size-smaller = 0.875em //较小 $font-size-small = 1em // 底部文字大小,小 $font-size-medium = 1em //中等 $font-size-large = 1.125em //大 $font-size-larger = 1.25em //较大 $font-size-largest = 1.375em //最大 其他美化 由于篇幅有限就不一一给大家介绍如何美化了。 其实在主题配置 ~\themes\next-reloaded\_config.yml 里面就说明了大部分美化功能了 可以自行按照介绍修改。如果不懂英文可以按照我说的方法 来修改即可了。 统计和分析 文件路径: ~\themes\next-reloaded\_config.yml 主题配置文件关键词: # Statistics and Analytics # See: https://theme-next.org/docs/third-party-services/statistics-and-analytics 在这里修改统计分析类美化,比如百度分析,谷歌分析什么的。 显示每篇文章的访问者数量 文件路径: ~\themes\next-reloaded\_config.yml 主题配置文件关键词: # Show number of visitors to each article. 支持leancloud、firestore、腾讯分析、不蒜子等 搜索服务 文件路径: ~\themes\next-reloaded\_config.yml 主题配置文件关键词: # Search Services # See: https://theme-next.org/docs/third-party-services/search-services 支持Algolia Search、本地搜索(Local search)、Swiftype等 聊天服务 文件路径: ~\themes\next-reloaded\_config.yml 主题配置文件关键词: # Chat Services # See: https://theme-next.org/docs/third-party-services/chat-services 支持Chatra Support、Tidio Support等 自定义美化文件失效解决办法 由于版本升级自定义美化文件可能失效,原因是部分css元素名称已经改变,只要重新修改名称即可。 不懂的可以参考这篇文章 另外,如果目录下没有相关文件夹可以自行创建! 例如,没有custom.styl文件 可以自行创建 自定义美化文件失效1.png 然后在~\themes\next-reloaded\source\css的main.styl文件末尾加入引用即可。 //My Layer //-------------------------------------------------- @import "_custom/custom.styl"; 自定义美化文件失效2.png 其他类似失效文件也可以用同样的方法解决:创建路径》添加引用 一般添加引用的文件是在相关目录下的那个文件。 我的 custom.styl 样式 不建议直接全部复制粘贴!!! 该样式支持V7.X以上版本,V7.X以下版本看这里 // Custom styles. /*******************首页样式*****************************/ // 网站背景(自适应) body { background:url(upload/201909091627124782.jpeg); background-repeat: no-repeat; background-attachment:fixed; background-position:50% 50%; background-size: cover; -webkit-background-size: cover; -o-background-size: cover; -moz-background-size: cover; -ms-background-size: cover; /*这是设置底部文字, 看个人需要修改*/ #footer > div > div { color:#de5e5e; } } //改变背景色和透明度等 .main-inner { background: rgba(0, 0, 0, 0.75); padding: 3.5em; //博文边框 opacity: 1; //整体透明度,包括字体 border-radius: 1em; //边框圆角 } // 字体颜色 .post-body { color: #fff; //黑色 } //博文列表内大框样式 .post { width: 100%; margin-top: 1em; //距离顶部 margin-bottom: 3em; //距离下一篇文章顶部距离 padding: 1em; //预览文字内缩距离 -webkit-box-shadow: 0 0 0.5em rgba(202, 203, 203, .5); // 边框渐变线样式 } // 网站描述 .site-subtitle{ font-size: 1em; color: white; } // 网站标题 .site-title { font-size: 2em; //字体大小 font-weight: bold; //字体:粗体 } // 标题背景 .brand{ background: transparent; //透明 } // 菜单栏 .menu { margin-top: 2em; padding-left: 0; text-align: center; background: rgba(0, 0, 0, 0.5); //菜单栏背景色 margin-left: auto; margin-right: auto; border-radius: 1em; // 圆角化 } // 菜单图表链接 以及 超链接样式 .menu .menu-item a { color: rgba(0,0,0,1); } .menu .menu-item a:hover { color: #ff106c; border-bottom-color: #ff106c; } // 菜单字体颜色 .menu .menu-item a {