2020-03
17

页码导航,搞定!

By xrspook @ 10:44:11 归类于: 烂日记

昨天突然发现,备份下来的COLOR3模板的截图是2014年的,所以这个模板是不是没有10年历史这么悠久呢?WordPress我用了10年,但这个模板用了多少年?我真的没有仔细翻查过资料。(发布这篇blog之前我又验证了一下,COLOR3的确是2010年的作品)。就怪当年设计好模板之后,我没有在上面标注时间,现在完成改版以后,我会在CSS上标注上版本的更新信息。我会不会把这个模板用一辈子呢?真不知道,又或者不知道多年以后我不用WordPress了呢。

昨天我把之前用插件解决的页码导航也实现了,但实际上不知道从第几个版本的WordPress开始,已经内置了页码导航,但很多个版本的官方标准模板上面的只有上一页和下一页。上一页跟下一页的设置非常原始,对内容有非常多的blog来说,这简直就是把人杀死的节奏,虽然有一点观察力的访客会发现,除了主页是没有页码以外,只要你翻到第2页,从网址上你就已经能看到页码了,所以接下来你只需要天马行空地在那里输入你想要的数字,就能跳转到那个地方,但问题是,对一个路人甲来说。页面只显示了上一页跟下一页,但最后一页是多少呢?难道还要搞一个猜谜游戏?于是,这又让我想起了那个什么逼近法。用靠谱的页码导航就不会有这种烦恼,那些算数问题全部都留给服务器了,因为任何一个导航页面都会有首页和最后一页的锚点(最后一页其实是算出来的),上一页跟下一页的锚点也是有的,当然如果那是最前头和最末末,会缺少了其中一个方向的锚点。中间的页面要展示多少个锚点,系统预留了控制点。我不知道这么好用的功能,为什么WordPress不把它光明正大读放出来,当然,没有很光明正大放出来的还有很多神奇的函数,比如,里面有很好几个预设参数,没有评论的时候可以显示一个信息,一条评论的时候可以显示一个信息,多条评论的时候可以显示一个信息,不允许评论的时候又可以有另外一个信息。对中文用户来说,一条评论和多条评论从语句设定上没有区别,但是,对英文来说,就有一个单数跟复数的区别,WordPress是外国人开发的,当然就会有把这两种分开来预设。昨天我没花什么功夫就找到了WordPress原生自带的那个页码导航,这纯粹是我运气好,万一我搜索了好几个小时才找到呢?找到那个原生的函数以后,我只需要对里面的东西进行格式化。WordPress肯定也知道。他们没有格式过的界面是没办法直接使用的,所以早就放好了各种关键字,只要你对那些东西进行合适的处理,就能做出你想要的效果。

在使用原生页码导航之前我查看了WordPress最新官方模板2020的代码,那个模板用的就是原生的页码导航,但经过高度的格式化处理。不知道现在的开发理念是不是区块管理,所以在2020模板里一个php又引用了另外无数的php。一个模板里有好几个文件夹,一个文件夹里有好几个php。当你打开一个以后,你不得不又继续跳到另外一个,继续有可能还要到其它地方。我是个很懒惰的人,基本上我把我需要引用的函数都丢到我的functions.php里。之前的COLOR3有好几个sidebar相关的php,但现在通过用函数判断,我直接把它们都缩到一个里。十年之前的COLOR3,基本上我都只是对CSS动刀,但现在,我会自己研究php里面的判断。其实无论是哪个编程语言,我觉得最终都可以变成简单的几条。第1条是分配,第2条是判断,第3条是循环,第4条是输出。基本上可以这么说,所有编程语言都在玩这几条,尤其是判断跟循环,不断地组合搭配,就能得出你想要的东西。现在回想起来,当年学习C语言的时候,冒泡法基本上可以被称作是终极大boss。当时老师觉得那是教学大纲里最高端的了,搞懂了那个,其它基本上不成问题,而冒泡法这种东西,连老师自己上课的时候也说得小心翼翼,因为她自己也没达到可以随便就脱口而出谈冒泡法的境界。估计现在再让我去冒泡法,我会得心应手很多。

大概当我彻底完成COLOR3模板升级以后,我会重新开始学习Java。几年前那本深入浅出学习Java的书看得我直接投降,因为后面的习题我就没做对几个,如果现在再去看的话,估计会有一些长进了。

2020-03
16

背景颜色

By xrspook @ 11:58:14 归类于: 烂日记

又花了一个下午的时间,我总算把超链接给搞定了。之前我就已经发现了那么个现象,如果我为一个图片做超链接,而那个超连接的默认的格式有悬停背景色的时候,无论我怎么整,图片下方都会有一条线,问题只是,那条线是粗还是细。昨天我遇到的问题是我需要在三个64*64像素的小图片上面做超链接。三个的图片完全没有文字,让人很绝望的无论我如何操作,那三个图片下面都有一个64*17的超链接方块,从颜色看来,那就是我在那个区域设定的超链接背景颜色。无论我怎么设置,分辨出来的东西还是会有那个颜色。之所以会是17,是因为我把文字的高度设定为16px。最终我终于记起了一条规定,如果之前你没有对某个元素设定规则的话,后面你可以重新为这个元素设定格式,但有些如果前面你已经设定了格式,后面,你又要推翻这个格式,并把它变成无格式的话,这是不可能的,除非我祭出大招“!important”。我在某片区域对超连接设定了背景颜色。但是在某些特定的情况之下,我又要把背景颜色去掉,单纯的background-color:transparent做不到的,但假如暴力的“!important”就可以。要去掉那个背景颜色,在不加“!important”的前提下,我把超链接的颜色设置为和那片区域背景颜色一致,所以颜色虽然存在,但就不会被看到了,但这么低端的做法CSS维护的时候就麻烦了。这个让我纠结了一个下午的事从前我也就结果,但因为太久远,已经忘记了。

昨天我匆匆把翻新过的COLOR3模板上线,感觉还不错。其实我也没改什么,主要是一些功能完善以及格式上的东西。我还专门找了一个色卡的网站去研究到底背景要用什么颜色。最普通的是浅灰色,但是那实在太普通了,然后我把黄色,橙色,粉色,蓝色,绿色,这几种很浅的马卡龙颜色都试了一遍,感觉有点怪怪的。说不准到底是为什么,反正就是和主体区域的白色混搭起来会有点刺眼。另外一个让我纠结的就是版头的颜色,之前我用的是纯黄色和纯橙色。这两个颜色加起来会让人有酸酸甜甜的热烈感觉,但是跟那些浅色混在一起,会莫名地让人觉得刺眼。以前模板的背景颜色是白色,同样也是橙色和黄色之所以没感觉刺眼,是因为我在所有板块外面都加了5px的边框,而这一次我把5px的边框全部都去掉了。之所以要去掉边框,是因为某一次,不知道谁留言说,我那些黑色的边框让人觉得辣眼睛。看到那条评论的时候,我马上实验在网页上实时修改掉那些边框,但只是单纯去掉边框,就像PS掉大熊猫的黑眼圈一样,怪怪的。当我对版头和背景颜色一筹莫展的时候,我顺手写了个纯黑色背景上去,出乎我意料,效果非常好,简直是让人有惊艳的感觉!外围黑色让核心部分的内容更加突出提神。因为高对比度,5px的黑色边框根本不需要存在。除了黑色以外,我也在网站上实时测试了其他颜色,发现用深色效果都挺好,所以我可以根据心情,随便换颜色。比如喜庆的时候换个纯红色。几乎可以这么说,只要是偏深的颜色都适合当我的背景颜色,因为主体区域我用的是鲜艳的颜色。

我不是一个美工,我总喜欢把东西弄得很整齐而已。真正的美工大概都很在乎意境,所以我永远都到达不了他们的境界。

2020-03
15

搞清楚comments.php

By xrspook @ 11:28:25 归类于: 烂日记

时间用在查找代码上去得特别快。感觉问题还没解决,时间就已经溜了。大体上看,就只有几个大问题需要解决,但实际上那些东西是完全没有头绪应该怎么去做的。昨天我花了一个下午的时间去处理comments.php。那个模板用来设定在哪里显示评论,哪里显示评论框,这其中还不包括评论框里的具体格式。看上去这是非常简单的事情,实际上,还是要考虑好几个问题,但显然,10年前,做那个模板的时候,我没有在comments.php这个问题上纠结,我顶多是往里面放了一些我设定好的CSS,所以那个部分的逻辑到底是怎样的,我没去修改,沿用的是某个模板。实际上我用的那个模板是不是标准的,我也说不准,因为我实在不记得当年我用作改造的模板是哪一个。因为通常WordPress的官方模板都非常简单,甚至可以说简单过头,于是你不知道该如何在那个的基础之上改造。大概之前,我的那个comments.php测试的时候,我只是考虑了一般情况。但除了正常情况,WordPress里还是会有一些极端情况,比如说某篇日志被设计为密码可见。无论是日志还是评论,在输入密码之前都应该是一片空白。那个模板就很神奇,日志部分已经是提示输入密码才可见,评论部分直接不显示就行了,但实际上,那里居然在会提示一次输入密码才可见,显然这就是画蛇添足了。让我纠结的时间最长的是嵌套格式的代码。因为正文部分我分为左边和右边,左边是文章的主体以及评论框,右边是边栏。这两个板块,一个是float向左,一个向右,一旦代码嵌套不合理,右边的边栏就会进入左边,又或者直接消失,也有可能是因为缺少结束嵌入代码,所以网页底部的东西飞上去了。要解决这些结构格式上的问题,就首先要搞清楚,那些php代码的开始结束位置。比如说某篇文章设定了不允许评论,但是对于已经有的评论,你还是要把它们显示出来,然后在最后一条的那里显示不许再评论。之前我根本没有测试过不许评论这个功能,显然当我在撰写日志的时候设定了不允许评论以后,之前的模板相应网页会出状况。而之所以这样,是因为默认的模板里面我只在if下面添加了足够多的格式结束标签,在else里面没写。不许评论就是else的部分,判定函数应该是评论是否开放,但实际上,不允许评论这句话从结构看来,应该是放在评论列表的最后。这样的风格才会统一,因为有些时候,不许评论之前可能文章已经有评论了,如果硬生生地把那放在允许评论就有评论框,不允许评论评论框消失并写着不允许评论,那样就太生硬了。

我花了几乎一个下午的时间去处comments.php,最后终于搞清了里面的逻辑关系。为了让那些if跟else,以及endif能更好地维护,我在上面做了很多注解,基本上每个的那里我都会写清楚了对应的是哪个,同时我也进行了缩进。那么以后找的时候就不会那么头痛。如果写代码的人用的是大括号,显然就不需要纠结endif对应谁。我也不知道为什么那个人不用大括号,在没有标注也没有缩进的情况下搞清那些东西真的好费神。

纠结不是毫无用处的,这会让我变得更强大。

2020-03
14

回忆曾经的BlogBus

By xrspook @ 13:53:01 归类于: 烂日记

用现在的眼光去审视从前的模板,我觉得连逻辑都出现错误了。还记得当年我选用BlogBus作为我的第1个blog,是因为他们相对于其它BSP来说非常自由,可编辑空间相对大。如果你足够厉害,你甚至可以写出你个人风格的网站,但是这样一来的话,对于新手来说就可能会变成白屏,又或者会满屏的错误代码,为了保证这种事不发生,所以实际上你是没办法弄到白屏的。现在让我回想起,那个时候到底是怎样的,我已经记得不大清楚了,现在也没办法把BlogBus找来研究一番,因为他们已经消失了。BSP消失了,意味着住在上面千千万万的人也被迫消失了。我认识blog,大概首先是从Blogger开始的,然后我知道了有些人会买个域名,然后把Blogger挂在自己的域名上面。昨天我突然有了个想法,要把从前我blog上的其它blog的文章也转为WordPress,分配一个子域名,挂在自己的服务器上。在BSP挂之前,我已经把自己所有日志都倒出来了。放在哪里,一下子我说不出来,但肯定能重新挖出来。前天,我翻出自己在WordPress上面的导出数据,是个XML文件。也就是说,上面只有数据,全部都是文字,又或者说是符号。除了我的东西以外就是一些标记我的东西到底是什么类别的标签。从开始用BlogBus,我就很注意过一段时间就备份一下,所以当我要离开,当我不在那里更新的时候,我当然要把自己的东西完整再备份回来。数据是可以备份的,但图片就不是那么回事了。BlogBus上面的空间很小,又或者你可以说没有空间。在那里写日志的日子,图片我几乎都是用外联的,是相对于BlogBus来说,那些外联图片死的更早。我已经不记得自己用过多少外联图片了,但可以肯定的是,他们挂了一批又一批。有些挂了是无声无息的,有些挂了会告诉你,请你把图片先备份下来。连yahoo.com.cn的邮箱都可以挂,我不觉得这个世界还有什么是不会挂的,但据说yahoo.com的邮箱还能用。

回到BlogBus的话题上。在我开始转用WordPress,我才明白到,实际上BlogBus上可控的东西很少,重要的核心部件,他们封装起来。你顶多只能用css去给那些核心部件化妆一下。当年我最喜欢干的事就是过一段时间就换一下背景图片。当我看到漂亮的壁纸,我就会换一个背景。还记得当年我花了好多时间去研究怎么才可以让文章显示在半透明的板块上,这样就能看到漂亮的背景。的确,用PNG图片就能做。但问题是那个滤镜在某些浏览器之下完全行不通。所以要看到后面漂亮的壁纸,我又要文章展示在磨砂的板块上,我只能在原始的壁纸上自己PS一层半透的图层,大小要刚刚和我的网站尺寸完全一致。浏览器的大小,网站展示的大小是完全不一样的事,就更不用说不同浏览器解释出来的东西经常差非常远。我在网站上放过漂亮的壁纸背景,在版头上放过flash,在主页里放过音乐,也曾经把鼠标图标换成别的……现在回想起来,那些都是些花俏的事,的确很好玩。但实际上,只是停留在好玩的层面上,玩一玩也就厌倦了。

随着自己积累出来的日志越来越多,我越发明白到自己blog的核心价值到底在哪里。如果一个blog只存在了几天,几周或者几个月。那只是玩玩而已,但如果过了几年,仍然活着。我会觉得,这肯定有意思。如果像我这样,居然活了十几年,而且每天都不间断。这简直就是神仙级的存在!人生没有多少个十几年。开始的时候我是个少年,现在,我仍然觉得自己是个少年,不过,经历过很多而已。

2020-03
13

减法

By xrspook @ 8:47:49 归类于: 烂日记

插件能解决的问题,为什么要自己写代码呢?东拼西凑代码就能解决的问题,为什么还要把那加到小工具里呢?我也不知道我为什么要这么纠结,以前我从来没有这么纠结过,但是那是以前。回看10年前自己做的WordPress模板,从现在的角度去考虑,其实很多地方我已经冥思苦想了,因为至今要我给出一个更好的解决方案,尚且无能。当时,我之所以把这个模板叫做COLOR3。因为英语的THREE和FREE的发音比较类似,完全翻译成中文就是色彩飞扬,因为我在模板里面加入了好多颜色,几乎可以说是五颜六色。我用了很多颜色,但是我几乎没用图片。整个模板里我只用了三张小图。为了找到那三张适合的图,我寻觅了不少图库。在那个时候我的这种做法是比较大胆的,因为基本上主流好看的模板都需要有不少小型图片支持,之所以是小型,是因为即便只是小小的一块图片也可以通过横向纵向重复的方式扩展成无限大小的大图案。从好看的角度考虑,背景用一大张高像素的图当然厉害,但是大图的体积也非常大。如果遇到网速不好,又或者服务器糟糕的话,非常有可能路人已经看完了你的网站,你的背景图片都还没加载出来。在我设计COLOR3的时候,我非常注重网站的加载速度,因为我的blog的服务器放在国外,所以从中国访问速度肯定会有点慢。也正是因为我在模板里几乎没有加入图片,所以我不需要考虑把网站的图片放哪里这种问题。不过我为网站设定了一个ico。那个东西极小,但是一旦被收藏,可以有很高的识别度。设计模板的时候我没加图片,因为我觉得真正吸引读者目光的应该是文章本身。可能是文章的文字,可能是文章的配图。从前好长一段时间,每篇文章我都几乎会配图,但是后来,配图这种事对我来说变成极小概率事件。从2014年夏天开始到2020年,在这超过15年里,我每天都写至少一篇。5400多篇日志,想想都觉得很疯狂。对别人来说,基本上数不出什么当年今日的日志有多少,但我可以数出一大堆。所以很多人blog里版块的链接有随机文章,相关文章,最近文章,热评文章之类的东西,但是对我来说,一个当年今日已经足够震撼了。刚好当年今日这个功能,其实根本没必要用插件去实现,简单的语句就可以做到。在10年前,我做COLOR3的时候,我就把插件的语句直接放到了模板的function里面。但是,那只是把php引用的代码具体的模板里,是定死的。那种自由远不如把当年今日做成一个小工具。小工具意味着可以对不同功能的东西进行区块管理。几乎可以这么说,有无限排列组合的可能。对低端人士来说,你有多少个箱子、有多少个工具,你就只能对那些进行排列组合,但是,对高端人士来说,无论是小工具还是放小工具的箱子,都是想有多少,就有多少的。之前,我只会创造箱子,但昨天,我连小工具都有点懂得该如何模仿组装了。

10年前,我通过插件让blog在文章链接上面开了挂。10年后,我选择的是要开挂,自己来,能节省,就绝不开挂。

© 2004 - 2024 我的天 | Theme by xrspook | Power by WordPress