普通视图

对友链的思考

2025年12月6日 15:00

· Picture by ChatGPT

在那个使用调制解调器拨号上网,把 8MB 容量的 U 盘挂在胸前炫耀的年代,曾经盛行着「免费空间 + 免费二级域名」的服务,这些免费的组合,推动了初代网民在网络建设网上家园的热情。

虽然已过二十多年,依然清晰记得自己在 [#Lycos] 提供的 20M 带广告的免费空间里,安装 [#vBulletin] 免费的社区程序,通过 [#Yeah] 提供的免费二级域名访问,搭建了班级论坛。印象最深刻的是,在胡乱折腾后,竟也是完美的屏蔽了免费空间自带的右侧栏广告。

和现在一样,在个站互换链接也是当时必不可少的操作,并且还带有如今看来更具独特个性的 88×31 像素站标。这些小小的图标,不仅是点击后打开对方个人主页的链接,更是精心制作的,在风格上承载站长思想的视觉符号。

时至今日,添加友情链接的初衷似乎没有本质的改变,在相互认可时,在观点共鸣时,都可以触发交换链接的行为,反倒是当前多了以做外链为目的的动机。

对于做外链,个人认为,一种,无非是为了增加权重,提升在搜索引擎的曝光量,然而在当下,搜索引擎已不再是流量的唯一入口,更何况整个网络的页面索引量相较于当年,那可是天文单位级别的增长,以此方式得到的入站效果是肉眼可见的不尽如人意。另一种,无非是在流量可观的的入口,展示自己的链接,比如联盟、聚合等导航类站点,然而在当下,目标群体是否还会主动打开这些导航类站点,在多如牛毛的链接里刚好不小心的点开你的链接?要知道,只能在类似 DMOZ 人工编辑的站点目录中找到兴趣信息的时代,已经过了。

回想当初也是随大流的在某联盟提交自己的链接,甚是觉得好笑,可想而知,得到的结果并不是对等的,在我这,他是 100% 的曝光量,在他那,我是 0.01% 的曝光量。十年过,从他那过来的点击量仅为八千不足。只是出于对等原则,保留了对方的链接没有撤下。这是唯一一次向导航类站点提交链接,其他的,也就偶尔看到对方添加了,自己握手性的挂上。

对于导航站,在浏览此类站点时,虽然会有一种探索的自主感,和意外发现宝藏的乐趣。但是,在点开链接期待即将看到不确定的惊喜时,往往呈现的内容质量,甚至还不如个站站长友链栏里推荐的。毕竟个站站长在互链时,除了遵循着相互认可、观点共鸣的初衷,也会经常维护这些链接。而导航站嘛,大部分由个人或少数人打理,面对数量不少,跳转可变的链接,就显得力不从心了,必然导致了各种问题链接的存在。

那么,不妨思考下,在算法主导的时代,不要去做中心化的站点聚合,你要做的,准确的说,让算法去分析不同站点的内容特征,作为标识,当然需要避免人为干预,让数据可靠可信。

在互联网中,携带标识的站点(A),会被推送到订阅某个标识的其他站点(B,C,D,……),这些站点可以决定是否展示站点(A),如果展示,则被展示的站点(A)会接收到提醒,同时,也可以决定是否展示对方的站点。同样的,任何一方撤下站点时,对方也会接收到提醒。

诚然,方案尚显粗陋,倘若能启发到你,且有落地之日,还望不吝提及 Lopwon

  •  

与 Typecho 相关

2025年10月11日 15:00

· Picture by ChatGPT

在重制 Snapic Plus 过程中,需要把 JSON 字符串转换为数组,于是构建了以下函数:


    function jsonStringToArray($jsonString, $associative = true)
    {

        if (!is_string($jsonString) || empty(trim($jsonString))) {
            return $associative ? [] : null;
        }

        $decodedData = @json_decode($jsonString, $associative);

        if (json_last_error() === JSON_ERROR_NONE) {
            return $decodedData;
        }

        return $associative ? [] : null;

    }

    $data = '{"last_update_timestamp":"1760160739","total_media_count":576}';

    jsonStringToArray($data); // 转为数组
    jsonStringToArray($data, false); // 转为对象

事后细想,这是常用的功能,Typecho 或许有内置的,果然,在 var/Typecho/Common.php 文件里找到了:


    $data = '{"last_update_timestamp":"1760160739","total_media_count":576}';

    Json::decode($data); // 转为对象
    Json::decode($data, true); // 转为数组

这样的现象还挺普遍,由于官方提供的使用文档略显粗犷,主题、插件的开发者们常常会忽略这些自带的方法、组件等,这么一来,无形中增加了制作的时间开销,也存在升级新版 Typecho 时,主题、插件代码失效报错的情况,比如(这里)提及的偏方。

此外,不少主题会使用诸如以下的标记方式对文章内容进行替换,以输出自定义的丰富版式,但是,由于官方似乎没有制定统一的开发规范,导致不同开发者使用了不同风格去实现相似的渲染结果,致使在切换主题时,无法正确兼容适配。


    [photos][/photos] // 开发者 A
    [fotos][/fotos] // 开发者 B

  •  

戒烟已十年

2025年10月2日 09:00

2005.jpg

十年前的今天,在灭了最后一支香烟后,就再也没有点燃过香烟,甚至是没再触碰过香烟。戒烟,并不为吸烟有害健康,而是听从母亲的忠告,履行诺言!

吸烟于我来说,不是耍酷,不是社交,而是当香烟、咖啡、音乐杂糅在一起时,能够在合法的界线内,把自己置身于一种亢奋的状态之中,保持思维活跃。

即使吸烟时期,也不会有烟瘾,一周顶多两包,希尔顿和 555 是常买的,万宝路太冲容易犯咽炎,偶尔会买。

以上,可能也是能够轻易戒掉香烟的原因吧。

  •  

C/2025 A6 Lemmon

2025年9月27日 09:00

· Pictrue by Stellarium

插件 Lopwon Comet 提示近期会有一颗高亮周期彗星 C/2025 A6 Lemmon 进入视野,于是,在 Stellarium 星空软件里,导入这颗彗星的数据,模拟查看彗星的轨迹位置,嗯,有盼头。

在11月08日过近日点之前的一周内,日落后月升前,彗星在西落状态时,位于天蝎座和银河带附近的地平高度 30 度左右的西边天空。意味着会有一个小时的观测拍摄窗口,如果彗星没有解体消失,如果彗星突然爆发增亮,那么,大概率可以拍摄到带地景带银河的彗星美照,当然,如果有硬件加持的话。



[cid-3824] [cid-3819] [cid-1545] [cid-429] [cid-3799] [cid-3820]

  •  

Typecho 相册主题 Snapic Plus v6 寻求贡献者

2025年9月13日 09:00

snapic-plus-v6.jpg


正在重制 Snapic Plus 相册主题,和重制 Snapic Paper 图志主题的方式相似,也是从空白页面开始码代码,运用个人知识面内最优策略从新实现所需功能,会把精力放在性能优化上:比如,分离非依赖组件,让用户通过插件选择性操作;比如,按需获取数据,避免一次性加载带来的阻塞;比如,移除所有第三方 API 接口,避免服务商吃相难看时的被动付费使用;比如,解决 v5 版中相当混乱的 JavaScript 带来的兼容问题,等等。

当然,也会添加一些新功能,比如,被不少用户提到的「无限加载」。其实,自己很反感这个功能,因为你永远无法正常的查看页脚信息,总会被没完没了的无限加载的内容挤压到视口之外。那么折中,提供三种选择:滚动触发无限加载,点击触发无限加载,以及原有的按键翻页加载。

平日里,除了喜爱拍照记事,比较在意视觉传达,也去关注影像美学,自认为多少了解:该如何优雅的展示图像,以及该给浏览者提供怎样的用户体验。但受限于某些前提(比如编写代码的能力等方面)之下,主题 Snapic Plus 不可能面面俱到,也有不尽如人意之处。所以,主题的每一次改进都有赖于各位使用者的反馈和协助,如果你的建议和意见被应用于 Snapic Plus 主题中,你的昵称将出现在贡献者名单里,以此鸣谢。

希望 Snapic Plus 相册主题能够满足:呈现你所创作的摄影、设计、绘画等图像作品的需求。主题不会喧宾夺主的增加与图像无关、胡里花哨的功能,这也是 Snapic Plus 一直以来不曾改变的初衷。


主题由来

2015年 Lopwon 建立「照片故事」分享一些偶然间看到的、自认为不错的、其他人拍摄的照片。一年后,由于疏于管理和域名过长,最终停更废弃。直到2018年03月01日,重启为「断片」,并保持每周一更至今,也是 Snapic 相册主题的开始。

最初的 Snapic 是款免费的主题,仅具有单一的图像瀑布流布局功能,当时称为 Snapic Free 主题。在往后不断迭代完善的过程中,发现耗费的时间也随之增加,于是才有了 Snapic Plus 付费版的主题。

  •  
❌