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

推荐订阅源

爱范儿
爱范儿
量子位
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
J
Java Code Geeks
B
Blog
V
V2EX
博客园 - 三生石上(FineUI控件)
Blog — PlanetScale
Blog — PlanetScale
aimingoo的专栏
aimingoo的专栏
Y
Y Combinator Blog
F
Fortinet All Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
A
About on SuperTechFans
D
DataBreaches.Net
阮一峰的网络日志
阮一峰的网络日志
博客园 - Franky
H
Help Net Security
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
酷 壳 – CoolShell
酷 壳 – CoolShell
MongoDB | Blog
MongoDB | Blog
L
LangChain Blog

林三视觉

取消百度智能云的备案接入 - 林三视觉 豆包赠我30天标准会员体验 - 林三视觉 发现weisaygrace主题设置1处可优化 - 林三视觉 网站打开速度不对:wordpress中毒余波 - 林三视觉 emlog 主题 Joe2026 优化标题样式 - 林三视觉 weisaybox顶部下拉菜单小调整 - 林三视觉 时隔许久,typecho迎来1.3.0版本更新 - 林三视觉 本站友情链接丢失,再续前缘看过来~ - 林三视觉 weisaybox 侧栏读者墙好像也不是实时更新的 - 林三视觉 关于 wordpress 评论审核机制的探究 - 林三视觉 突然想起来,还有一点不同 - 林三视觉 weisaybox 在2026年1月5日更新后的一点细节问题 - 林三视觉 发现了 weisaygrace 侧栏评论的 bug - 林三视觉 清理zblogphp后台评论 - 林三视觉
emlog侧栏最新评论修复:邮箱换ID - 林三视觉
emlog侧栏最新评论修复:邮箱换ID 林三是也 发布于 2026-03-09 11:31emlog531 次浏览抢沙发 · 2026-03-09 · via 林三视觉

豆包这家伙,有时候改代码让我很难受,有时候又让我很佩服。

最近这两个月使用emlog的时候,发现侧栏居然出现了管理员的评论,而这个过滤功能早在去年就通过威兄的帮助已经实现了。于是就想着肯定是系统的功能出现了变动,使得主题的相关代码也得更新逻辑。

上次威兄改好可用的代码是:


// 获取所有管理员邮箱
    $users = $CACHE->readCache('user');
    $admin_emails = [];
    if ($users && is_array($users)) {
        foreach ($users as $user) {
            if (isset($user['role']) && $user['role'] === 'admin') {
                $admin_emails[] = strtolower(trim($user['mail']));
            }
        }
    }

我提交给了豆包,说明了是emlog的主题代码,然后豆包不到一分钟就给我了完美方案,而且说的很有道理。

旧版:通过管理员邮箱过滤评论
新版:评论表里的 mail 可能为空 / 被修改,正确方式是用 UID 判断是否为管理员

并给出了完美代码:


// ===================== 核心修复:获取所有管理员 UID =====================
    $users = $CACHE->readCache('user');
    $admin_uids = [];
    if ($users && is_array($users)) {
        foreach ($users as $user) {
            // 只要是管理员,就记录 UID
            if (isset($user['role']) && $user['role'] === 'admin') {
                $admin_uids[] = (int)$user['uid'];
            }
        }
    }

然后将之前跳过管理员评论的代码


        // 跳过管理员评论
        if (in_array(strtolower(trim($row['mail'])), $admin_emails)) {
            continue;
        }

替换成


        // ===================== 修复:用 UID 过滤管理员评论 =====================
        if (in_array($comment_uid, $admin_uids)) {
            continue;
        }

保存上传,问题立刻解决,666。