2022-02
9

后台预览和前端不一致

By xrspook @ 9:03:30 归类于: 烂日记

自从更新了WordPress 5.9以后,我的blog的自定义小工具在前端一律不显示,可以显示的只剩下系统自带的小工具,这到底是为什么呢?当我在后台用小工具实时预览界面的时候,我的小工具一个都没少,全部都有,为什么预览界面没有问题,实际上前端又有问题呢?5.9是我在春节放假之前更新上的,好长一段时间更新都没有任何问题,所以我根本没想过更新一个大版本会导致这样的事故。WordPress这个东西默认没办法回滚,要回到之前只有手动在服务器操作,而且还不一定兼容。到底是哪里出了状况?

可以肯定的是,5.9和之前的版本最大的区别可能在于全站都可以用可视化的方式用区块编辑,设计模板也不需要写代码了。但显然,对我这种人来说,我不太相信区块可视化编辑,我还是相信我的代码,但自从更新上这个版本以后,我的代码估计跟他们默认理解的有差异,所以就导致了这个问题。我觉得会不会是代码的某些钩子发生了变化,有些失效了,所以就导致我的自定义小工具失效呢?一开始我是这么认为的,但是当我研究过最新的那些模板后,却发现他们的模板里基本不自带小工具。我之所以要自定义小工具,是因为一般的模板、官方的模板通常不具备我需要的功能,所以我只能自己写代码实现。我从前的代码到底跟现在有效的那些语法在什么地方有冲突呢?我必须得找出来。让我觉得很困惑的是,如果是我代码语法有问题,理论上应该无论后台预览还是网站前端出来的效果是一样,也就是我的小工具应该都不起效才对,但实际上两个界面不一样。

当我好不容易找到了一些自定义小工具的脚本,当我把那往我的模板里贴了以后,的确一开始的时候是可以的,但改着改着就不行了。一开始我用的是正向修改,就是对比我自己的脚本跟可以显示的那些脚本,后来发现我觉得自己已经把需要改的地方都改完了,但还是没反应。于是我就开始反过来改,把我自己的东西贴到可以显示的脚本里面,结果发现依然没有问题的。起码可以这么说,核心部分的代码一点问题没有,但到底是什么地方出了问题呢?最后我修改到只剩下函数名称。一旦我把函数名称,东西就失效了。当我把没有失效还能显示的脚本贴回去以后,东西依然是失效的。所以到底怎么整才有效,怎么整会失效,到底是哪里的问题导致我的东西不能在前端显示呢?我花了一整天的时间都没找到原因,因为当我把可以显示和无法显示的脚本放在一起对比,除了自定义函数的名称以及缩进以外没有区别,而那个可以显示的脚本贴进WordPress里有时可以,有时不行。行就行,不行就不行,我写了那么多年的blog模板,无论是WordPress还是其它,从来没遇到过这种有时可以有时不行的情况。之所以这样,我猜他们是在某个地方用了缓存。那个缓存不是我浏览器的问题,因为这边我换浏览器问题依然存在,所以他们为了提高WordPress的运行速度,到底在这个5.9版本里做了什么呢?春节期间我一直没有主动修改,因为我希望过一段时间他们就会出一个新的版本解决前端和预览不一致的问题。如果我的小工具在预览界面也无法显示,我会心安理得。我不会像现在这样知道有问题,但完全不知道问题出在哪里。

可能当新版本出来以后会发现其实根本不是我的问题。

2021-06
26

喜欢搜索

By xrspook @ 13:15:16 归类于: 烂日记

我到底有多么喜欢搜集资料呢?这个东西连我自己都不知道,反正一定程度上我觉得在这个问题上我会上瘾,无论是什么话题。在八卦的问题上我会上瘾,在学术的问题上我同样会上瘾。

我一直都很喜欢大学的文献检索课。那门课程教会了我们做使用查找专业文献的中文的搜索引擎以及外文的搜索引擎。这种优势大概只有在综合性大学才能有。因为如果学校不够大,估计买不起那么多个数据库的查询权限。虽然华农买了很多,但是华农的人也很多,所以我们还是会塞车。不过塞车通常只会出现在中文期刊引擎,外文引擎极少人去蹲坑。相对于中文搜索引擎来说,其实外文的那些逻辑性更强,关键词搞对了,正中目标的概率更高,而且如果找对了一篇,你就可以从那一篇引出非常多其它东西。这个是拉一个出来就引出一串的节奏,非常好玩,但在中国的文献里面拉出来的那些有可能就像我自己投机取巧那样,只是用某个案例提一下凑一下数。这种事情在综述里面最为常见,实际上当我要搜索资料的时候,绝大多数情况之下,我想要的不是这种,而是某些确切的案例,想知道某些实在的现象。

专业搜索都是有套路可言的,但是在八卦搜索方面完全要发挥你的想象力。当然如果你不通过搜索,而只通过蹲点的方式就没有这种烦恼,但是搜索出来的东西可能会更加有趣,因为你说不准什么时候就会遇到一些让你很惊喜的内容。之所以会这样,大概是因为蹲点的那些发布的模式基本上都已经固定下来,无论是内容还是编排方式。人人都从那个渠道去获取信息的话,就没什么惊喜可言,而且当你习惯的那个发布的频率以后,你还会莫名着急等待,某一次等不到的时候可能会大发脾气。之所以要在八卦搜索的时候花心思,是因为我们在国内,外国的很多东西我们都无法直接看到。倒不是因为内容真的有什么问题,而是因为某些平台早就被一枪打死了。对我们而言,我们自己也很习惯在我们熟悉的平台发布我们的信息,在中国,我们用得最多的肯定是微信微博抖音快手之类的东西,当然也会有人用一些小众的平台,又或者像我这样喜欢独立建自己的网站,写自己的blog。多年以后我觉得要保留资料的话,其实最安全的方式还是自己说了算,不把东西发在平台上,哪怕你现在觉得那是一棵大树,肯定不会倒,但是“肯定”这两个字是不存在的。yahoo这棵树够大了吧,但是还是倒了。就更不用说其它平台上面的各种非主流的,那通常只是用来试一下水。这么多年观察下来,全世界范围之内依然能够撑下去的博客系统大概只有 Google属下的blogger,以及可以在平台玩,也可以自搭的WordPress,其他的东西都是浮云。图片可以找不到,视频可以找不着,但是当文字和数据文档找不到的时候真的让人很抓狂。比如前天晚上我找不到一个Excel文件,我觉得大概是因为我没有把它命名好,所以不知道为什么就删除掉了,但幸好我在我的坚果云的回收站里把它找到并存了回来。理论上那个文件应该不存在了,但是坚果云不知道为什么仍然留着。那个文件是我2019年就删掉了的。文件里的信息很重要,因为我在那个文件里记录了Dangal在中国上映61天的全部票房信息,里面也有我自己编排的Tabata,同时也有当年我为了备战广马半程马拉松给自己制定的跑步训练计划。这些关键的信息找不到那可是天大的可惜啊,因为全部都是精心记录编排出来的。我不知道坚果云是因为什么原因,居然还可以把我那些文件存回来,因为理论上他们只有1个月/3个月的后悔药(免费用户1个月,付费用户3个月)。这是非常伟大的功能,但问题是也让人觉得有些心寒。万一我某次不小心放了一些不该放的东西进去了呢?

找回来就好,总比找不回来活在记忆的纠结中强。

2020-07
24

分类管理

By xrspook @ 9:22:41 归类于: 烂日记

越是整理数据,越是觉得挺奇葩的。还记得一开始的时候,BlogBus只有分类,没有标签,后来多了标签,但分类没了,强迫把我们的分类全部变成标签。后来分类回来了,标签依然有,但分类只能选一个,标签可以好多个。这样的设计纠结了好长时间才终于确定了下来。后来当我用上WordPress以后,发现原来人家分类和标签都可以同时多个,但因为BlogBus的使用习惯,所以分类通常我只会选一个,而标签会搞一大堆。这是因为blog上的使用习惯,所以我在文件归档的时候也会用分类和标签,我的默认设置继续是分类只有一个,标签有一堆,用python的思路去解释就是某个文件跟某个分类是一一对应的,它们可以形成字典的关系。某个文件和某串标签是一对多的,如果要用字典表话。那堆标签得用列表去表达,于是在文件一开始的时候,就得引入特殊的字典模块。我也不知道为什么必须得有个分类。如果没有分类,全部都只有标签呢?其实也说得过去。文件完全按照时间排序。如果时间一样的话,就按照不同的文件号排序,因为文件号这种东西也是有一定的命名规律的。至于用什么关键词找到这个文件,则可以通过标签,所以其实我觉得标签和关键词是非常类似的东西。

当我在进行动态blog数据转为静态网站以后,我有点明白到。分类就像是定义一个人的一级目录。有些人的blog分类的命名非常有意思。对我来说,那肯定是花了很多心思才终于想出来的,对别人来说或许不这样。要快速定义一个人的话,用分类基本上就可以了。标签通常体现的是某个人的各种特征。标签使用的多少跟这个人的性格和特点很有关系。标签云是一种非常有用的东西,通过不同的颜色以及不同字体的大小就能体现出标签出现的频率,从而反映出这个人的特点。分类这种东西,像是自我介绍,是努力想出来,把自己介绍给别人的,而标签更像是无意之中积累回来的东西。我不知道别人的blog情况会怎样,基本上我的blog的分类是废掉的,因为绝大多数文章都被分类到烂日记,因为我的习惯是一天至少要有一篇日记,而烂日记每天也顶多只有一篇,如果大于这个数的话,我就会用其他分类。从前当我还非常勤快的时候,还有其他分类,但现在,每天一篇日记算是保底,也是封顶。只有一些非常特殊的时候,我才会有两篇或者以上的日志。从前的我,那些多于一篇的日志类型五花八门,而现在也就只有当我心血来潮的时候才会来一些,而通常,那都是专注于某个领域的。对我来说,分类能代表些什么呢?那只能代表过去我曾经做过的某些事。真能体现我个人特点的,只有标签云。到底我用过多少个标签呢?我实在记不清楚了,因为WordPress是个神经病的存在,有些标签我输入了,但是有错别字,我删掉了,但那居然也会保存下来。即便我没有按保存按钮,而有些时候,我真的敲错别字了,但是自己毫不知情。那个错误的标签也保留下来。一篇文章我会输入多个标签。基本上,想到什么相关就会往里面写,所以标签可能一大串,也正是因为这样,各种标签都会出现,所以只出现一次的标签在我的blog里,概率很高。于是就造成了一个比较搞笑的局面,我的分类是严重偏科的,而我的标签是海量的。如果某一天我要把这些东西选进我比较简洁的目录,我该怎么选择呢?标签肯定是不行的,但分类也很奇怪。所以大概那个时候,我就只能用日期做归档了,又或者选择用得最多的10个标签。

静态blog很伟大,但我觉得,我的东西、我过去16年的生活没那么容易在一个静态blog里全部展现出来。因为连我自己都说不清,那到底有多少东西。

2020-07
9

状况连连

By xrspook @ 10:35:47 归类于: 烂日记

你永远都不知道纠结的路上会出什么状况。一路平坦不好玩,5分钟就能所有问题,那是无聊的节奏。老blog的重新上线是我近段时间一直在纠结的东西。要做的事情很多,应该如何开展?做这些事的步骤应该是怎样的?谁轻谁重?

首先我做的是处理blog的核心——内容。文字我是有的,我有大把大把,但里面也有非常多连我自己都说不上到底是什么的东西。有可能长文被阉割了,但我自己毫不知情,有可能是消息从其它网站上复制粘贴过来了,带入了一些我根本没有意识到的乱七八糟代码,不同网站连换行都不一样。有些是“br”,有些是“br/”,有些是“br /”,有些是“BR”,有些是“BR/”,仅仅是“b,r,/,空格”的排列组合就有多得你想不出的效果。如果这在HTML里,都不是问题,但我做静态blog的第一步是从html到markdown,该死的“strong”在html2text的脚本里是不允许期间有换行的,在这个脚本里,连续两个br就能自动匹配正路的p,但如果遇到稀奇古怪的“/”和空格呢?在我的python转码脚本里,我用了很多行去处理那些排列组合的问题,正则的、非正则的替换用了好多遍,所以脚本运行速度只可能在我一次又一次的增加新规则之后变得越来越慢。理论上,这些东西都是不存在,但事实就是这么残忍。除了html的问题,还有yaml以及文件名字符要求的问题。转义字符出现就丑陋了。丑陋归丑陋,字符不对,那是直接编译不出来的节奏。出状况这种事简直不计其数。我也不知道自己到底改了多少个版本,理论上脚本修改这种事我应该放在坚果云文件夹里进行,但因为我生成数据的文件夹和我的脚本文件夹一致,显然那就太消耗同步流量了,所以我大胆地把脚本放在了坚果云以外修改,那是一个错手就没得救的玩命。其实我完全可以把输出的文件夹设置在坚果云以外的地方,但我就是没有这么干。要把BlogBus和点点的数据匹配为WordPress的格式,然后再用WordPress格式的数据转化为markdown。为什么我要有WordPress这个步骤呢?起码但我学会了XML到另一个XML的规律后,不静态blog的时候我还能退回WordPress,虽然那意味着我导入数据的时间将是个天文数字。没经历过这些纠结,我就不会深切体会到好好码字,不要不规范乱写的重要性。从前,尤其是一开始在BlogBus写blog的时候,我总把网上看到的东西直接复制到编辑器里,这样过于简单的操作让我付出了非常多整理的代价。后来的点点几乎没有这种问题,现在我更加是极少会直接复制粘贴网上的东西到我的blog里发布,即便有时会截取一段,基本上都是保证无格式纯文本的。现在我知道了,但当时我不知道,成长是需要付出代价的。我仅仅是在处理自己的东西,所有坑都是我从前挖下的。如果我是被迫要帮别人擦屁股,估计我早就把那个人诅咒死几万年了。

内容基本确定下来后,一开始我觉得应该不会太难的静态blog主题原来也不好找。首先是样式得对上眼,其次是渲染速度要快。有些主题连单机渲染都会让我的电脑崩溃掉,连测试都无能,真的是什么都不用说了。我几乎得出一个结论,如果某个主题大于5MB,基本上无需考虑了,那些10MB左右的,更加会让我电脑宕机。不是人人都会遇到这种事,宕机与否的测试基于我需要渲染的文章有接近3900篇,不是人人都有这样的体量,这还是建立在我已经放弃了6100多篇图片内容已经失效,光文字意义不大的文章上。

内容好了,主题好了,还得考虑把网站托管在哪里。要免费,要速度快,要可以绑域名,要服务器稳定。对一个女人,对一个习惯于货比三家的人,这实在又是一个大纠结啊啊啊。

2020-07
4

累死累活

By xrspook @ 23:04:56 归类于: 烂日记

折腾了一个晚上,打算关电脑睡觉了,突然想起好像今天自己的blog还没写。我把时间都耗在了什么地方呢?我正在校对其中一个老blog里的内容。

之前,我的关注点纯粹是格式的转换,先从BlogBus的XML转化为WordPress的XML,然后再从WordPress的XML转化为一篇一篇的markdown。纯粹技术的东西我已经几乎完成了,余下来的问题,需要在不断的转换之中发现,然后修正。今天我花了一个晚上搞的是校对从前那个blog导出来的内容。不知道从什么时候开始,我发现里面有些文章的正文是不存在的,是空白的,至于为什么,非常有可能是当时的文章我发布的时候其实没有成功,但是标题和其他内容已经有了,失败的纯粹只是正文。至于为什么不行,我当时也不知道。通常那些失效的文章,我都是批量手动粘贴发布的,可能是从一个网页,也可能是从一个word文档贴过去。在贴的过程中,自动带入了非常多的超文本格式,这个我之前已经吐槽过了。在格式转换过程中,我不得不费尽九牛二虎之力把那些转回来。其中那些空白的正文,这一次我想把资料填补回去。

昨天我的确好不容易找回了那些资料,也进行了填充,发现效果还不错,但是原始导出的那个BlogBus文件就不再原始了。接着,我发现那些有正文的文章其实也不完全可信,因为正文的内容不知道为什么只有一部分,不是全文。难道发布以后,我没有好好一个一个浏览过吗?还是说点发布之前,我看到的东西的确是完整的,BlogBus没有给我单篇文章字数的限制,但是实际上发布的只是部分。我的问题在于,有可能发布出去以后,我没有在前台校对一遍,但是也有可能我校对过了,当时看是没有问题的,但是当我在BlogBus后台把自己的东西导出的时候出了状况。一开始我觉得可能是我自己的问题,但后来我发现,断字断得好神奇,一个单词可能只剩下头两个字母,显然,如果是我复制错误的话,不会有这么低级的东西,顶多我会漏掉一些段落。现在搞清楚到底是我人为的错误还是BlogBus阉割了我的东西已经毫无意义。所以,我只能一篇一篇地校对文章的开头和结尾,确保是完整的。一些篇幅比较短的文章,暂时我还没发现断尾的现象,但是,对一些比较长的文章,断尾是必然的。纯文字有100K以上那些文章,通常BlogBus只留给我一半的内容,余下的那些消失了,而且还不告诉我。我记得从前选择BSP的时候,我知道有一些是对单篇文章的字数有限制的,到达一定程度以后就会告诉你,超过多少字了,请你重新修改,否则不能发布,但BlogBus没有这个限制,起码在一开始我选择他的时候没有。另一方面,我觉得之所以这样,会不会跟他们数据库的存储模式有关。如果他们数据库的某个存储单元顶多只能100K,我在那里输入了150K的文字。当然多出来的那些就不可能被保存下来,这纯粹只是我的猜测。几十上百篇文章,一个一个去检查头尾是否齐全,格式有没有乱套,这是相当累人的。虽然那些最原始的东西我还有,但绝大多数那些东西我都是保存网页的。现在那些网页已经不能在Firefox里打开了,用Chrome也不行,于是我只能使用IE,而且是兼容视图模式。我不觉得当年我用保存网页的方式把文字记录下来有什么毛病,我只是不明白为什么现在的浏览器不允许我打开那些老东西。

如果当年就有markdown这种这么神奇的东西,大概我就不需要走这么多弯路了。

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