Puock主题修改备忘录

浏览:72次阅读
6 条评论

共计 1432 个字符,预计需要花费 4 分钟才能阅读完成。

作为一个写博十余年的老博主,实在是没有精力折腾各种新东西。但近期博客程序被入侵事件让我不得不换掉了使用很久的Flat主题。

本来想在后台随便在个官方推荐的主题凑合用,但那些主题基本上都是歪果人设计的,对中文排版支持不太友好,所以又重新找了款果然开发的主题,也就是本站正在用的——Puock主题

这款主题美观大方,功能强大,一次性解决了我很多痛点。可以说是立即部署、立即使用。

但使用了几天后,还是发现有需要调整的地方。现在记录一下,免得后面忘记了。

一、评论者URL跳转问题

主题模板设计的功能是:评论者如果留了URL的,则进行base64加密,然后通过一个中转页面进行二次确认,再进行跳转。

我对这个功能的态度是:完全不需要。

博友互访留下URL,并且清晰地展示在前台,我认为是非常重要的,加密再跳转及其影响用户体验。对于那些发广告的评论,我是一律删除就完事了,所以并没有这个需求。关键是,经过测试,部分URL加密后无法正常调转,而是会跳到我博客首页,这完全让人摸不着头脑。

由于本人对代码几乎一窍不通,看了半天也没找到哪里能关掉这个功能。

开始把go.php里的代码丢给“文心一言”去分析,并根据AI指引修改里面的代码,试图取消加密,直接调转,但无果。

之后采取笨方法,直接用全文搜索,搜出了包含“go.php”这个关键词的页面opt.php,路径位于:

主题模板文件夹下的 /inc/fun/opt.php

相关代码为:

//跳转链接

function pk_go_link($url, $name = ”)

{if (pk_is_cur_site($url)) {

return $url;

}$url = PUOCK_ABS_URI . ‘/inc/go.php?to=’ . base64_encode($url);

if (!empty($name)) {

$url .= ‘&name=’ . base64_encode($name);

}return $url;

}

这段代码丢给AI,让他改为不加密,但AI弄了半天,不成功。

我看了下代码,还是采用最笨的方法,将$url =后面的内容改为了$url,也就是左右相等,替换后如下:

//跳转链接

function pk_go_link($url, $name = ”)

{if (pk_is_cur_site($url)) {

return $url;

}$url = $url;

if (!empty($name)) {

$url .= ‘&name=’ . base64_encode($name);

}return $url;

}

再次刷新运行,完美解决。

二、屏蔽键盘左右键翻页功能

这个问题是博友S发现的。

在单篇文章页面,使用键盘左右键可以实现上一篇、下一篇的快速切换。

看起来很美好,但这里有个“致命”BUG,当浏览者在评论框里输入文字时,不小心使用了键盘左右键来调整内容,此时页面会马上切换到上一篇或下一篇,直接导致整个评论表单输入的内容全部丢失。

当我打算去官方开发者博客留言反馈这个问题时,结果光是写那条留言就反复写了五六次——官方竟然复刻了这个问题,也就是说跟我博客运行环境是没有关系的。

在等待官方修复这个BUG之前,我尝试自救。

跟文心一言沟通多次,并没有给出有效的解决办法。

无奈之下,找到了chatgpt,让他给我写一个屏蔽键盘左右键的插件,修改一次后,解决问题。

现在,我的博客将暂时屏蔽键盘左右键,按下时会弹出对话框,虽然也有一定影响,但总比吞掉辛辛苦苦敲下的文字强吧。

 

正文完
 0
评论(6 条评论)
S
2024-10-16 16:47:18 回复

左右键问题,可以加一行代码仅在评论框禁用。全站还是可用的。

if (keycode == 37 && x!=document.activeElement)

    2024-10-16 21:19:40 回复

    谢谢指导,根据你的代码,结合AI修改,现在勉强能用了。只是必须要弹出对话框,不然代码会失效。

S
2024-10-16 16:48:18 回复

定义:var x = document.getElementById(‘comment’);

2024-10-16 17:00:56 回复

改成适合自己的很重要。

    2024-10-16 21:20:40 回复

    轻易也不敢修改。随着每次更新,以前修改的往往就失效了。

2024-10-16 21:30:12 回复

评论者URL加跳转一个是是为了防止有人通过刷留言换取外链权重(不过现代搜索引擎倒是不用太在乎这个),另一个其实是防止留言者的域名过期后被其他有害网站买走用了(或者他的网站被黑了),结果在搜索引擎和安全软件的眼里,站里这个直接链接URL就变成在引导用户访问有害站点了。在搜索引擎里被导致站点被搜索引擎警告,降权,甚至屏蔽、弹窗提醒危险网站。(如果是国内有备案的,甚至有可能会导致备案被撤销)所以尽量站内一切外链都加一个,站外链接跳转功能,隔离一下。