#8 邮箱能在本站用户表查到的,一律用他自己的头像,不再替换 · 新增 yang_avatar_is_registered_email():get_user_by('email') 查表, 邮箱先 trim + strtolower 规范化(导入用户/插件写库/老数据都有大小写混用) · 加请求内 static $memo 缓存:评论列表一页 20 条、同一个人常有 2~3 条, 不缓存就是同一个邮箱反复打库(实测 20 次 → 1 次) · 新增 yang_avatar_keep_member() 读开关,运行时默认 '1' · 过滤器在拼 data: URI 之前拦截,命中即原样 return $avatar · 后台新增「注册用户保留原头像」复选框 · 关于「注册用户自己也没有真 Gravatar」:WP 的 get_avatar() 从不检查图上 是否存在,只拼 URL 交给浏览器;要分辨必须向 gravatar.com 发请求, 而本功能坚持零外网调用(发布脚本会断言)。因此做成开关、默认保留, 这类用户保持灰人像、不猜。 #9 肤色从 7 档收窄到 4 档,只留最浅到偏黄 · 移除 d9a066(偏深)、c68642(深棕)、8d5524(最深) · 安全性依据:Prng::pick() 用 integer(0, count-1) 取索引,只消耗一次 next(),与区间跨度无关 ⇒ 缩短数组不改变 PRNG 消耗次数,发型/衣着/ 表情/背景抽到的结果一点不变,只有肤色跟着变 (已用 _v39_isolate.php 逐字节证明:7 色与 4 色渲染除肤色外完全相同) 顺带修掉一个老 bug:baseColor 错当肤色 · bottts 的 baseColor 是机器人外壳色(19 种彩色),映射成肤色后外壳被 涂成肉色 e8b98f / f1c27d。从 $map 里去掉 'baseColor' => 'skinColor' · 「base」这名字像是底色,但各家风格语义并不统一,不能按名字猜 开关位置(踩过的坑) · 新开关必须排在「头像风格」之前。风格列表是 18 张带缩略图的卡片、 实测高约 2100px,排在它后面的控件会落到 y≈2327px,而设置页视口 约 1000px —— 用户不滚三屏根本看不到。3.2.36 就是栽在这里。 挪到之前后实测 y=216px、首屏可见。 验证 _v39_probe.php 5 / 0 肤色收窄 + bottts 修复 _v39_isolate.php 50 / 0 「只改肤色、其它不变」逐字节隔离证明 _v39_member.php 19 / 0 注册用户判据(含缓存次数精确断言) _v39_falsify.py 8 / 8 上述判据反向 _guard337_layout.py 25 / 0 布局守卫(新增开关位置三项) _guard337_layout_falsify.py 5 / 5 _guard336_avatar.py 55 / 0 源码守卫 _guard336_falsify.py 17 / 17 _geo337_avatar_reach.py 34 / 0 真实几何 + 显隐交互 _smoke18.py 18 / 0 18 套风格全量冒烟 _verify4_prod.php 80 / 0 逐字节对官方(对配色无感,见 docblock) _pkgcheck339.py 52 / 0 包内内容契约 _pkgcheck339_falsify.py 20 / 20 包内断言反向 回归 88/0、56/0、77/0、13/0;93 个 php -l 全通过 PHP 8.4.25 与 8.5.12 严格错误级别均 0 警告 Refs #8 #9
14 lines
609 B
CSS
14 lines
609 B
CSS
/*
|
|
Theme Name: Kratos_Yang
|
|
Text Domain: kratos_Yang
|
|
Version: 3.2.39
|
|
Requires PHP: 7.0
|
|
Description: 这是一个Kratos主题的分支版本,用来增加一些定制化功能。
|
|
Tags: 博客, 双栏, 响应式, 自定义背景, 自定义颜色, 自定义图标, 自定义菜单, 特色图像, 收录优化, 邮件中心, 主题选项, 小工具, 文章置顶, 无障碍友好
|
|
Author: Yongquan Yang
|
|
Author URI: https://yangyq.net
|
|
Theme URI: https://code.yangyq.net/laoyang/wordpress-kratos-yang
|
|
License: MIT License
|
|
License URI: https://code.yangyq.net/laoyang/wordpress-kratos-yang/src/branch/main/LICENSE
|
|
*/
|