博客添加评论功能及定制化样式

这篇具有很好参考价值的文章主要介绍了博客添加评论功能及定制化样式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

哈喽大家好,我是咸鱼。(博客网址: https://xxxsalted.github.io/)

在搭建了博客并换了主题之后,发现有许多细节方面的东西还需要完善和定制化一下,比如说行距和引用的样式我不是很喜欢,以及没有评论功能。

于是决定自己动手,说干就干。

PS:下文的修改操作仅限于博客主题(Klise),不同主题的配置文件可能会不一样,不过大体思路都是差不多的,即修改 scss | config | ejs 文件。

Valine 评论系统

搜了网上的教程,决定采用 Valine 来实现博客评论功能。

因为 Valine 的存储是基于 LearnCloud 的,所以我们要先注册一个 LeanCloud 账号。

登录之后进入【控制台】点击【创建应用】

应用创建好以后,进入刚刚创建的应用,选择左下角的【设置】 > 【应用凭证】,然后就能看到你的 APP IDAPP Key 了:

进入到你的博客根目录,找到你对应主题的主配置文件 _config.yml,添加关于 Valine 的配置字段。

comments:
  enable: true # 开启评论系统
  type: valine # 采用哪种评论系统
  button: true
valine:
  enable: true
  appid: # 从 LeanCloud 的应用中得到的 appKey
  appkey: # 从 LeanCloud 的应用中得到的 appId.
  placeholder: "说点什么吧!" # 评论框占位提示符
  path: window.location.pathname # 当前文章页路径,用于区分不同的文章页,以保证正确读取该文章页下的评论列表。
  avatar: /img/redcat.jpg # Gravatar 头像
  guest_info: nick,mail,link 
  pageSize: 10 # 评论列表分页,每页条数。
  recordIP: false # 是否记录评论者IP
  serverURLs: # 该配置适用于国内自定义域名用户, 海外版本会自动检测
  emojiCDN: # 设置表情包 CDN
  enableQQ: true # 是否启用昵称框自动获取QQ昵称和QQ头像, 默认关闭

配置好之后进入 Git bash 窗口,重新生成一下静态文件:

hexo clean

hexo g

在本地测试一下:

hexo s

但是发现没有生效,一开始我还以为配置格式不对(yaml 格式要求比较严格),再三重复确认了格式没问题之后,还是没有生效。

我就在想是不是没有渲染出来,然后去到主题目录下的 layout 目录,发现了 valine.ejs 文件。

<博客根目录>\Klise\layout\partials\_comments\valine.ejs

打开一看发现里面居然没有内容,然后网上搜了下资料,把相关内容复制粘贴了进去。

结果发现还是不行,是不是没有去调用这个 ejs 文件?

打开 <博客根目录>\Klise\layout\partials\_comments\index.ejs 文件查看验证一下,果然如此。

<%- partial('partials/_comments/waline') %>

因为我们用的是 Valine,所以把 partials/_comments/waline 改成 partials/_comments/valine 即可。

再试一下,成功了!

样式定制化

正文默认的行间距我不是很满意,所以打算改一下,打开我们的博客网页然后点击 F12 查看网页元素。

发现正文内容的样式字段在 post 类下的 p 标签中,而且在 main.css 文件里面。

但是这个 main.css 是动态生成的,即 hexo 生成 public 目录的时候会去找 主题\source 目录下的 sass 文件然后生成 main.css 文件。

所以我们想要修改样式,就必须找到标签样式对应的 sass 文件。

我们找到主题目录下的 main.scss 文件,发现他还引用了其他的 sass 文件

<博客根目录>\themes\Klise\source\css\main.scss
// Import sass files
@import "partials/fonts","partials/base","partials/layout","partials/post","partials/miscellaneous","partials/dark";

一个一个去找,最后在 _post.scss 文件下发现了对应的配置字段。

.post{
  ......
  p {
    margin-top: 8px;
    margin-bottom: 8px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  ......

接下来修改引用样式对应的配置,原本引用样式是两端对齐的方式,而且还是斜体,我不是很喜欢。

发现还是在 _post.scss 文件下,然后修改如下:

.post blockquote p {
  font-size: 16px;
  font-style: normal;
  line-height: 1.8em;
  color: #999;
  text-align: start;
}

最后重新生成静态文件并在本地验证,没什么问题就把新修改的内容部署到 Git 上。文章来源地址https://www.toymoban.com/news/detail-861212.html

到了这里,关于博客添加评论功能及定制化样式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据分析实战-Python实现博客评论数据的情感分析

    现在很多网站、小程序、应用软件、博客、电商购物平台等,都有很多的用户评论数据,这些数据包含了用户对产品的认知、看法和一些立场; 那么我们可以对这些数据进行情感分析,可以得到一些有价值的信息,帮助我们进一步提升产品价值或用户体验; 本文主要针对某

    2024年03月13日
    浏览(64)
  • 教教大家wps怎么添加字体

    在办公或者学习的过程中,经常需要制作wps文档,不过wps自带的字体种类比较少,我们要怎么在wps上添加想要的字体呢?下面就来看看详细的操作,非常简单。 wps字体库添加字体的方法 方法一:添加云字体 1、在“WPS”中,随意新建一个空白文档。 2、打开文档,在工具栏中

    2024年02月04日
    浏览(54)
  • 【ubuntu云服务器部署公网Web抽奖工具】CSDN博客评论区用户抽奖

    送书第一期 《用户画像:平台构建与业务实践》 送书活动之抽奖工具的打造 《获取博客评论用户抽取幸运中奖者》 前几天做了一期送书活动,随着时间流逝,也即将迎来赠书活动抽奖环节,为了活动的公正公开以及可见性,特此开发了一款Web抽奖工具,结合Springboot后台获

    2024年02月08日
    浏览(70)
  • 我用GPT-3.5写了一个关于C++排序的博客,大家看看和我手写的哪一个好

    手写版:你还不懂排序?那是你没看到这篇文章…_我爱OJ的博客-CSDN博客 以下内容来自GPT-3.5大模型: 目录 一、排序算法的基本概念 二、比较排序算法 1、冒泡排序 C++代码实现 2、选择排序 C++代码实现 3、插入排序 C++代码实现 4、希尔排序 C++代码实现 5、归并排序 C++代码实现

    2024年02月03日
    浏览(59)
  • 虚拟网卡是什么?教教大家添加虚拟网卡的方法

    不少用户都发出疑问虚拟网卡是什么?其实虚拟网卡就是通过软件模拟出来的电脑网卡,微软操作系统都具备这一功能。那么下面小编就来教教大家Windows10系统添加虚拟网卡的方法,非常简单。 Windows10系统添加虚拟网卡的方法 1、按下win + R键,在其中输入:hdwwiz,然后 (e

    2024年02月11日
    浏览(43)
  • 【Java Web】论坛帖子添加评论

    数据层 增加评论数据; 修改帖子评论数量; 业务层 处理添加评论的业务; 先增加评论、在更新帖子的评论数量; 表现层 处理添加评论数据的请求; 设置添加评论的表单。 一、数据层 1.1 CommentMapper.java 1.2 Comment-Mapper.xml 1.3 DiscussPostMapper.java 1.4 DiscussPostMapper.xml 二、业务层

    2024年02月09日
    浏览(38)
  • 利用css var函数让你的组件样式输出规范样式API,可定制性更高;

    我们平时在使用Elementui Antdesing这些UI库时,难免会碰到使用deep强行侵入式去修改组件内部样式的情况;   比如下列代码,我们需要把ant的分页样式进行高度自定义,就得使用deep去修改;   这种实现方式确实能够达到我们的目的,但在开发时确总觉得不太合适: 1、他属于强

    2024年02月03日
    浏览(41)
  • 博客园页面展示--前端及样式代码

    这是一个博客园的首页面的展示前端代码和样式代码 样式代码CSS采用外部链接,建好文件直接复制运行vscode即可,话不多说,直接上代码 前端代码如上所示,简单编写了几个模块,下面是CSS样式代码 样式代码中,方便学习,添加了较多的  完毕。

    2023年04月22日
    浏览(48)
  • 二级评论列表功能

    我的个人网站留言列表在开发时,因为本着先有功能的原则。留言列表只有一级,平铺的。 当涉及多人回复,或者两个人多次对话后, 留言逻辑看着非常混乱。如下图  于是,我就打算将平铺的列表,改造为二级列表。效果图如下  因为我是前端开发,对数据库查询语言的

    2024年02月11日
    浏览(59)
  • Vue+SpringBoot实现评论功能

    评论系统相信大家并不陌生,在社交网络相关的软件中是一种常见的功能。然而对于初学者来说,实现一个完整的评论系统并不容易。本文笔者以 Vue+SpringBoot 前后端分离的架构细说博客评论功能的实现思路。 对于一个评论系统主要包含评论人,评论时间,评论内容,评论回

    2023年04月08日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包