初次接触Typecho,被它的简洁性与自由度深深吸引。虽然我对html和php知之甚少,但我有志不断学习进步。

本博文将持续更新自己在建立博客时遇到的问题,想实现的功能,以及对应的解决方案,如果能力可及的话,还会附上些自己的思考。

1.网页ico图标

ico图标,就是打开网站时,标签页上的显示logo。这个其实很简单,把想作为图标的文件转换成32x32的尺寸,重命名为favicon.ico,放在网页根目录下即可。NiceBowl当然要用充满恶趣味的NiceBowl作为网站logo啦!

2.添加摘要后显示大段空白。

Typecho没有自动摘要的功能,在首页默认全文输出。对于内容文字很多的文章,会把页面拉伸得很长。不过,可以在发表文章的时候手动设置摘要。
但我初次尝试时,发现设置后会显示大段空白。
查阅了网上资料后,知道了typecho会把文章中的换行符转换为<br>标签,导致空白的产生。
看到不少文章(如https://blog.csdn.net/dianqiangjin0204/article/details/101427844)建议注释掉/var/hyperDown.php文件的第1177行。
看似简单方便,然而这会造成其他的麻烦——换行符失灵。在写博文时,如果只换行一次,则输出的文章将不会分行;换行两次,才能正常显示,然而中间也会多出来一段空白。普通的博文倒还好,段落不多;但在我编辑补番列表时发现,每段都要多空一行,在显示上简直是一场灾难!
后来在发现typecho官方很早之前就在github上给出了合适的解决方案。
试之果然可行。
虽然不甚了解具体逻辑,但姑且当做一个黑箱去应用吧。

3.网站升级至https

已经是0202年了...已升级

4.显示文章阅读数和最后更新日期

参考了这篇博文https://www.gaozhengjie.cn/amp/237
在post.php里添加代码即可。
关于时区,可以在typecho的后台里直接设置。对我这样的笨蛋小白可以说是十分友好了。

5.背景音乐播放

暂时没有头绪。不过服务器只有25G的硬盘容量,感觉压力颇大。
总之,先把网易云里收藏的音乐给归档分类吧。

6.主题更换

暂时没有想法。在我粗糙的审美里,默认主题其实很Nice。不过参观了其他博主的网站后,觉得改改也很棒...

7.博文浏览数

参考了这篇文章
不太懂最好的编程语言,总之先拿来用了。

8.添加友情链接栏

先是查了一下,发现好像需要下载插件。
但我转念一想,像Sobereva老师一样直接在网页侧边添加一栏不就好了吗?应该直接编辑网页配置文件就可以完成吧。
参考了这篇博文https://www.jianshu.com/p/3a7ca1dc2acc
这里有一处值得说明。
起初我也想按照博文里那样,直接复制上面的代码,改改就成。但改完之后发现侧边栏并没有显示出来。
仔细读了一下代码,基于我粗浅的关于编程语言的理解,发现应该是首尾两行的判断语句惹的祸。
判断语句的意思,大概是“如果侧边栏设置里没提到,或者设置了显示此栏,则加载下面的代码”。
然而“友情链接”并没有随着我添加代码而显示在后台管理的可视化窗口里,应该是还要改动一些其它关于这个判断语句的代码。
于是索性删掉了判断语句,果然可以正常显示出来了。
sidebar.png
感觉自己这种不求甚解,能用就行的态度有些愧于自己理科生的身份...

9.侧边加载卡通图片并固定

参考了这篇文章https://www.runoob.com/css/css-positioning.html
不太懂如何形容这个功能...
总之是受到萌娘百科里一些条目的启发,如栗山未来牧濑红莉栖等...感觉这种效果很酷!
钻研了一番后,发现实现起来并不算难。
利用图片position属性的fixed标签即可实现这一效果。

<img style="position: fixed; right: 0px; bottom: 0px;" src="图片地址" width=宽度 height=高度 >

在页面php文件里插入这一行代码即可。我插在了sidebar.php里面。

10.新回复邮件提醒

能实现这个功能的插件有不少。我选用了@天空Blond 推荐的CommentToMail。
注意使用ssl加密时要把SMTP端口改为465。
配置的时候还踩了两个小坑。
①虽然我用的是foxmail邮箱,然而SMTP地址仍然要填写smtp.qq.com。真是坑爹...
②SMTP密码是在开启邮箱的SMTP服务时所提供的,并不是邮箱的登录密码。
这里附上插件链接CommentToMail.zip

11.给右下角的纸片人加上回到页面顶端的功能

Google上查了一圈,发现如果想要营造滚动效果,就不可避免地要引入css或js...好麻烦。
索性直接简单干脆地加上<a href="#top" title="返回顶部">好了。
(其实是折腾不明白css和js,以及懒)

12.侧边图片随刷新轮换

参考了这篇文章

<script>
  document.write('<img style="position: fixed; right: 0px; bottom: 0px;" src="图片存储文件夹/'+parseInt(Math.random()*(轮换图片数目))
  +'.png"height="高度" width="宽度">')
</script>

13.侧边栏的“胡言乱语”(其实就是类似于“一言”的功能)

语料库暂定为我自己乱写的集句。
实现思路参考了@一纸忘忧 的《PHP随机读取TXT文件某行内容》(https://www.ikxin.com/php-randomly-reads-txt.html),略有改动。

<?php
$f='Poems.txt';   //文件名
$a=file($f);  //把文件的所有内容获取到数组里面
$n=count($a); //获得总行数
$rnd=rand(0,$n);    //产生随机行号
$rnd_line=$a[$rnd]; //获得随机行
echo "$rnd_line"; //显示结果
?>

仅有一条评论

  1. 好评,学习中。虽然我用的是Jekyll

添加新评论