Typecho-handsome主题如何统计全站字数

news2024/11/15 10:53:07

💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后端的开发语言ABAP,SQL进行任务的完成,对SAP企业管理系统,SAP ABAP开发和数据库具有较深入的研究。


💅文章概要:在使用handsome主题的过程中,每篇文章都会自动进行字数的统计,但是如何才能统计出我们首页从开始到至今写的所有文章的字数之和呢?今天的教程告诉大家如何在Typecho-handsome主题中统计全站字数!


🤟每日一言:保护好你的梦想,等到它开花结果的那天,它会让你俯视所有曾经看低你的人。

目录

代码实现

源代码修改位置

博客信息栏展示全站字数

注意事项


代码实现

<?php
//字数统计
function allOfCharacters() {
    $chars = 0;
    $db = Typecho_Db::get();
    $select = $db ->select('text')->from('table.contents');
    $rows = $db->fetchAll($select);
    foreach ($rows as $row) { $chars += mb_strlen(trim($row['text']), 'UTF-8'); }
    $unit = '';
    if($chars >= 10000)     { $chars /= 10000; $unit = 'w'; } 
    else if($chars >= 1000) { $chars /= 1000;  $unit = 'k'; }
    $out = sprintf('%.2lf %s',$chars, $unit);
    return $out;
}
?>

源代码修改位置

          1.按照如下路径进入到functions.php文件中:

functions.php文件路径


          2.在文件最后复制粘贴上述代码

复制粘贴上述代码


博客信息栏展示全站字数

          1.按照如下路径进入到sidebar.php文件中:

sidebar.php文件路径


          2.复制以下代码到剪贴板:

 <li class="list-group-item text-second"><span class="blog-info-icons"> <i data-feather="calendar"></i></span>
               <span class="badge
           pull-right"><?php  echo allOfCharacters(); ?>字</span><?php _me("全站字数") ?></li>

          3.粘贴代码到如下位置("在"最后活动"的下方):

粘贴代码位置


          4.保存文件查看运行效果

效果演示


注意事项

          如下图所示代码:蓝色框所圈中的代码是用来控制矢量图标文字的,矢量图标文字就是"全站字数"左边显示的那个图标

控制图标文字的代码


          假如我们想要更换在前面的矢量图标文字需要怎么做呢?具体可以参考笔者下面这篇文章:里面对如何修改矢量文字图标做了超详细的讲解

Font-Awesome如何引入矢量字体图标

在开发网页的过程中,我们会经常需要用到一些小图标来进行形象地说明解释或者装饰网页,但是传统的图片引用方式引入的的是...


下面来看看笔者修改过的样式吧!
          1.选择一个自己喜欢的矢量文字图标

矢量文字图标
          2.copy覆盖原来的矢量文字代码,从下图可以看出我们已经成功地覆盖掉了!


覆盖原来的矢量文字代码
          3.最终效果,一起来看看叭!


最终效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/71356.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

phpstudy2020安装及简单使用教程

phpstudyV8.0以上使用教程 简介安装步骤配置搭建网站自己的第一个PHP程序 最新版长这样 简介 按我的理解&#xff0c;phpstudy是一个集成式的PHP运行环境&#xff0c;虽然是个软件&#xff0c;但他实现的功能就是给PHP语言编写的脚本赋予一个可执行的环境&#xff0c;可以…

GPR(高斯过程回归)

写在前面&#xff1a;   本文为科研理论笔记的第三篇&#xff0c;其余笔记目录传送门&#xff1a; 理论笔记专栏目录 介绍结束下面开始进入正题&#xff1a; 1 高斯分布 ​   一元高斯分布的概率密度函数为&#xff1a; p(x)1σ2πexp⁡(−(x−μ)22σ2);简写为&#xff…

Lecture2:损失函数及优化

目录 1.损失函数 1.1 支持向量机SVM 1.1.1 SVM的代价函数及优化目标 1.1.2 如何理解将SVM成为大间距分类器 1.1.3 大间距分类器的数学原理 1.1.4 SVM核函数&#xff08;构建非线性分类器&#xff09; 及控制点的选择 1.1.5 构建自己的SVM 1.2 softmax分类器 1.3 soft…

06-07-08 - 突破512字节的限制

---- 整理自狄泰软件唐佐林老师课程 1. 突破限制的准备工作 辅助函数 字符串打印软盘读取内存比较根目录区查找 1.1 字符串打印 问题&#xff1a; 主引导程序中如何进行字符串的打印&#xff1f; 1.1.1 BIOS中的字符串打印 指定打印参数&#xff08;AX 0x1301&#xff0…

Web大学生网页作业成品:个人博客主页 (纯HTML+CSS代码)

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

HUST编译原理实验2

语法分析&#xff0c;建立并显示语法树 以识别 a 10.01; 为例&#xff0c;阐述语法分析的构造过程 1. 建立AST储存结构 由a 10.01得知&#xff0c;语法构成为: SentenceList->Sentence->Exp SEMI->ID ASSIGNOP FLOAT SEMI因此&#xff0c;需要储存结构如下 typ…

Java数据结构与Java算法学习Day10---图的了解和无向图(简略笔记记录)

目录 1.1图的定义及分类 142 1.2无向图 143 1.2.1图的相关术语 143 1.2.2无向图的存储结构 144 1.3图的API设计 145 1.4图的搜索 146 1.4.1深度优先搜索 146 1.4.2深度优先搜索API设计 147 1.5广度优先搜素 149 1.5.1广度优先搜索API设计及代码实现 150 1.5.2广度…

QT 系统学习 day04 事件(鼠标,键盘), UDP 通信, TCP 通信,多个定时器,重写绘画事件

1. 事件 (有 键盘按下&#xff0c; 鼠标按下&#xff0c; 鼠标双击等) 1.重写键盘按下事件&#xff0c; 函数&#xff1a; void keyPressEvent(QKeyEvent *event) /*** 按键按下事件 ***/ 代码&#xff1a; void keyPressEvent(QKeyEvent *event) /*** 按键按下事件 ***/{q…

【吴恩达机器学习笔记】十五、大规模机器学习

✍个人博客&#xff1a;https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 &#x1f4e3;专栏定位&#xff1a;为学习吴恩达机器学习视频的同学提供的随堂笔记。 &#x1f4da;专栏简介&#xff1a;在这个专栏&#xff0c;我将整理吴恩达机器学习视频的所有内容的笔记&…

低代码开发平台——体验系统的重要性

什么是优秀的体验&#xff1f; 简而言之&#xff0c;优质的体验意味着可以随时随地根据客户的需求提供服务&#xff0c;这在数字化的世界中&#xff0c;意味着真正的多重体验。Gartner早在2018年就定义了MXDP&#xff08;多体验开发平台&#xff09;&#xff0c;以应对我们日常…

游戏开发38课 unity 模板测试

ShaderLab 命令&#xff1a;模板 配置与 GPU 上的模板缓冲区相关的设置。 模板缓冲区为帧缓冲区中的每个像素存储一个 8 位整数值。为给定像素执行片元着色器之前&#xff0c;GPU 可以将模板缓冲区中的当前值与给定参考值进行比较。这称为模板测试。如果模板测试通过&#xff…

liunx如何重启mysql

Linux如何重启MySQL Linux中重启MySQL可以使用service mysql restart命令和脚本启动方式/etc/inint.d/mysql restart。 推荐&#xff1a;MySQL教程 其他命令如下&#xff1a; 一、 启动 1、使用 service 启动&#xff1a;service mysql start 2、使用 mysqld 脚本启动&am…

使用redis做分布式锁

思路步骤 获取锁, 使用 SETNX 命令设置一个key.如果没获取到&#xff0c;从新拿锁&#xff0c;返回步骤1 ; 从新拿锁可以设置等待时间;也可以记录拿锁次数为了做“避免死循环”.如果获取到&#xff0c;使用 EXPIRE 给锁加存活时间&#xff1b;接步骤3&#xff0c;执行业务&…

微机----------------中断控制器8259A(可编程的中断控制器)

目录 功能8259A的引脚8259A的工作方式中断响应顺序8259A的中断优先级管理8259A中断屏蔽管理⭐8259A的中断结束管理功能 ①单片825能管理8级中断,并且可级联管理64级 ②可对任一级中断单独屏蔽或允许 ③中断被响应后,可直接提供中断类型号 ④可通过编程选择其工作方式 IRR中断…

C++入门篇

入门C命名空间命名空间定义命名空间的使用C输入&#xff0c;输出缺省参数缺省参数概念缺省参数分类函数重载函数重载概念C支持函数重载的原因引用引用概念引用特性具体应用const修饰的常量进行引用&#xff08;常引用&#xff09;传值&#xff0c;传引用的效率引用和指针的区别…

【无标题】3 GENERIC语句 和 INTEGER类型

【VHDL】【作业】3 GENERIC语句 和 INTEGER类型 文章目录【VHDL】【作业】3 GENERIC语句 和 INTEGER类型前言什么是GENERIC语句&#xff1f;32位加法器仿真波形总结每天进步一点点 笔记仅供自学&#xff0c;用来回看复习&#xff0c;不一定适合你&#xff0c;如有错误请指出。前…

SpringBoot:概述

Spring Boot 是 Spring 开源组织下的子项目&#xff0c;是 Spring 组件一站式解决方案&#xff0c;主要是简化了使用 Spring 的难度&#xff0c;简省了繁重的配置&#xff0c;提供了各种启动器&#xff0c;开发者能快速上手。 &#xff5e; 本篇内容包括&#xff1a;Spring Boo…

[选型] 实时数仓之技术选型

数仓技术路线选型 对于已有的hive数据仓&#xff0c;怎样改造成实时数仓的要求呢&#xff1f; 2.关于实时数仓的选型 如果选择hbase&#xff0c;建议选择kudu 如果选择kudu, 还可以选择doris 如果选择doris&#xff0c;建议选择iceberg 以上三种选择&#xff0c;要配合具体…

C++实现身份证号码过滤与排序

1.描述 警察办案里检索到一批(n个)身份证号码&#xff0c;希望按出生日期对它们进行从大到小排序&#xff0c;如果有相同日期&#xff0c;则按身份证号码大小进行排序&#xff0c;如果是错误的身份证号&#xff0c;则从排序列表中删除(仅需判断前两位省级地区编码是否在下面的…

知识图谱-KGE-语义匹配-双线性模型-2016:NAM

【paper】 Probabilistic Reasoning via Deep Learning: Neural Association Models【简介】 本文是中科大和科大讯飞联合发表在 IJCAI 2016 上的工作&#xff0c;本文提出了 NAM&#xff08;Neural Association Model&#xff09;用于概率推理&#xff0c;并具体化为 DNN&…