惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Security Affairs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Jina AI
Jina AI
P
Palo Alto Networks Blog
GbyAI
GbyAI
大猫的无限游戏
大猫的无限游戏
A
Arctic Wolf
Hugging Face - Blog
Hugging Face - Blog
小众软件
小众软件
Y
Y Combinator Blog
T
The Blog of Author Tim Ferriss
Blog — PlanetScale
Blog — PlanetScale
S
Schneier on Security
V
Vulnerabilities – Threatpost
C
Cybersecurity and Infrastructure Security Agency CISA
雷峰网
雷峰网
T
Tenable Blog
人人都是产品经理
人人都是产品经理
T
Tor Project blog
C
Cyber Attacks, Cyber Crime and Cyber Security
AWS News Blog
AWS News Blog
Microsoft Security Blog
Microsoft Security Blog
J
Java Code Geeks
Scott Helme
Scott Helme
SecWiki News
SecWiki News
C
CERT Recently Published Vulnerability Notes
Recorded Future
Recorded Future
I
InfoQ
Security Archives - TechRepublic
Security Archives - TechRepublic
Help Net Security
Help Net Security
Cloudbric
Cloudbric
C
Check Point Blog
Engineering at Meta
Engineering at Meta
TaoSecurity Blog
TaoSecurity Blog
B
Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园_首页
N
News and Events Feed by Topic
云风的 BLOG
云风的 BLOG
MyScale Blog
MyScale Blog
腾讯CDC
量子位
Application and Cybersecurity Blog
Application and Cybersecurity Blog
K
Kaspersky official blog
Vercel News
Vercel News
F
Full Disclosure
T
Troy Hunt's Blog
Forbes - Security
Forbes - Security
S
Security @ Cisco Blogs

N25H

Maye Nano:拒绝臃肿,回归纯粹的快速启动工具 – N25H Maye Nano Script Help – N25H 国行三星 Galaxy Watch7 其他品牌手机解锁心电图、血压等功能 – N25H 推翻重做,彻底重写WordPress主题 – N25H WordPress 模板目前采用的缓存获取方案 – N25H WordPress 通过Hook修改评论Flood判定时间 – N25H 相册测试1 – N25H 相册测试2 – N25H 在Linux Ubuntu上挂载新硬盘 (临时、永久挂载) – N25H
从 Typecho 迁移到 WordPress 的后续 – N25H
作者: N25H · 2023-11-26 · via N25H

主题

主题一直比较喜欢友人C的handsome,迁到wp后也就联系原作者说明移植意图了,同为猿类的我也清楚知道开发个主题的艰辛,所以也不打算不会对外发

对于从来没接触过wp的我来说,主题移植进度异常缓慢,前前后后大概十几天🤣,还阉割了不少功能甚至连后台的主题选项都没有,直接上define简单有省事🤷‍♂️

现在主题功能大概是

  • 登录入口对接了cf的Turnstile(省的被爆破😒)
  • 针对未登录用户加入了验证码(刚上线几小时就被硬塞了几十条垃圾评论,也是服了🤦‍♂️)
  • 主题缓存,缓存了导航、边栏等一些乱七八糟的东西(虽说没什么用但还是写了😒)
  • css与js的拼接压缩,也是有缓存的,要手动清除
  • 后台顶部菜单增加了个清除主题缓存的选项
  • 编辑器增加了几个区块,代码、按钮、引用、收缩框等(文档都快翻烂了😒)
  • hook掉了编辑器的那个url选项,实现指定格式自增
  • 评论回复审核邮件通知,后台回复邮件通知,最大支持向上2级,发信采用PHPMailer库
  • 导航,多层级导航,直接调用wp后台的选项,然后递归实现,并进行了7天缓存
  • 友链,这个功能是通过主题开启wp的链接功能,直接调用链接实现
  • 友链页面模板
  • 文章分页,评论分页,都是调用wp的api实现
  • 阅读数与赞功能(直接自定义字段一把梭🤣)
  • 重构了评论表情功能(越整越烂🤦‍♂️)
  • 无标题文章显示默认标题(就这个最简单😂)
  • hook了评论flood判定时间
  • 停用了一些我认为没什么用的功能
  • 部分评论提示信息改为返回json(hook了一堆东西)
  • 头图支持
  • 对象缓存

后续

固定链接

遇到的第一个问题就是两个程序的固定连接有点不匹配,要想让旧站链接可以自动跳转的新站链接有很多可行方案,我这为了省事直接用了nginx的url重写,实现301到新站的固定链接

# 将旧站重定向到新站
location ~ ^/p/(.).html$ { rewrite ^/p/(.).html$ /p-$1/ permanent; }
location ~ ^/z/(.).html$ { rewrite ^/z/(.).html$ /$1/ permanent; }

CRON

停用了wp默认的访问执行,改用服务器定时执行,目前主题发送邮件之类的功能都依赖这个。

评论提交验证

暂时移除了cf的验证,国内访问有一点点慢。

头图部分

使用wp的post自定义字段实现

HTML/CSS/JS合并缓存

html为直接压缩输出,同时配合WP Super Cache插件做了静态缓存(事先并不知道这个插件还带html压缩…)

css/js为将需要用到的文件压缩合并输出到指定缓存目录

对象缓存

参考WP_Object_Cachewp-includes/cache.php自行对接了redis作为缓存,主题内大部分数据也都做了缓存(自动调用transient或object cache),效果还行,文章页首次大概5-7次查询,之后几乎都是0-2次。

邮件发送

之前使用wp_schedule_single_event函数定时发送太慢,且无法达到实时发送的目的,现采用redis队列+后台多进程监听,重新实现邮件发送部分。

  1. 主题hookwp_mail函数将要发送的邮件信息投递到redis队列。
  2. 后台使用多进程监听,并在多个smtp邮箱中随机抽取一个进行发送

经测试发现,gmai>gmail大概率被判断为垃圾,163>gmail几乎不会被判断为垃圾。


……

赞赏作者

如果觉得我的文章对你有用,请随意赞赏