记得之前有人问我,不是在用wordpress程序,怎么还有其他博客程序的笔记,然后我告述他,我主流程序都在学习。然后就没有然后了,这两天工作比较多,就在zblogphp子站上面做了点笔记,然后就想着搞下日历。
zblogphp的tpure纯净主题日历小改
这款tpure主题,说是纯净主题,其实指的是界面纯净,功能上是非常丰富饱满的。林三不喜欢花花绿绿的一些,就弄了个日历上去,没想到看着还不错,就是这个日历的默认样式是,如果该日期发表了日志,就会加上蓝色的边框以突出显示,其他就没有了。我以为,还得像苹果手机那样,当前的日期也需要突出显示!

主题还在更新,作者确实是良心,虽然有AI协助的可能性,但也是良性的进步或升级。由于主题设置里面的 SEO 设置可以添加自定代码,所以就问了下豆包,我这种需求是否可以满足,得到了肯定的回答。
先加上这个js代码,使得能够给当前日期加上类,方便后续添加css进行显示:
document.addEventListener('DOMContentLoaded',function(){
const table = document.getElementById('tbCalendar');
if(!table) return;
const today = new Date();
const day = today.getDate();
const tds = table.querySelectorAll('tbody td');
tds.forEach(td=>{
const num = parseInt(td.innerText.trim());
if(num === day){
td.classList.add('today-td');
}
})
})
还需要这段代码前后加上 script (自己添加尖括号)才能放到自定义代码框。然后再赋予 CSS 样样式:
#tbCalendar tbody td.today-td {background: transparent !important;
border:1px solid #f03838 !important;color:#f03838 !important;}
#tbCalendar tbody td.today-td a{color:#f03838 !important;}
#tbCalendar td {text-align: center !important;}
#tbCalendar td a {display: block !important;}
同样需要在前后加上 <style> 就行了。
1panel 面板 WAF 防火墙阻止配置保存
保存的时候,系统一直是“保存…”,所以用排除法得出是云服务器的问题,豆包也第一时间判断出了 WAF 拦截,其实也是一个安全问题,不允许添加自定义的 script (自己添加尖括号)代码。
解决方法有很多种,最简单的要数直接修改主题,改动主题文件,就可以绕过 WAF 检测,缺点是如果升级主题,就会覆盖修改,然后失效。另外的方法就是将js代码做成文件,然后引用,但是这个引用也要用到 script 这个单词,所以只要加了尖括号,就会拦截,和直接在自定义代码里面添加被拦截是一个效果。
于是只能妥协,先关闭 WAF 功能,然后对代码进行保存,保存好之后再打开 WAF 功能。缺点也是一直存在的,只要还想修改这个自定义代码部分,点击保存就会继续无法保存,幸好其他页面的配置点击保存不受影响。
这里做个笔记,如果以后保存功能异常,就知道如是方法排查。
PS:这个tpure主题后台设置明明是有文章打开效果,可以选择新窗口还是原窗口,但是设置了原窗口后,那个 cms模块依然是新窗口,所以很让人恼火,强迫症是受不了的。问了豆包后发现,也可以加到 js 里面来实现。只要一行代码就可以达到效果,确实是让林三惊艳到了,难怪很多人都要学它,真的是神器!
zblogphp日历小改有所悟:等您坐沙发呢!