前言
子比主题自带的评论表情虽然够用,但谁不想让自己的评论区多点个性?猫猫狗狗、ACGN、熊猫人……每个站长都想塞一套自己的表情包进去。
但问题来了:子比主题的表情包改起来很麻烦——要么去改主题文件(一更新就没了),要么手动往服务器传文件、改配置,对小白极不友好。
这个插件解决的就是这件事:后台上传、自动分组、无缝接入子比原生表情面板,完全不用动主题代码。
核心功能一览
1. 后台上传,即传即用
在 WordPress 后台进入 评论表情包组 → 后台上传,填写分组名、选择图片,点一下按钮就行。插件会自动:
- 创建分组目录
- 把图片存到
uploads下 - 注册到表情分组配置
支持格式:GIF / PNG / JPG / JPEG / WebP,动图静态图通吃。
2. ZIP 压缩包一键导入
这是 1.1 新增的功能。如果你有一整套表情包(比如从某个群聊扒下来的几百张图),不用一张张传。
直接把图片打成 .zip 压缩包上传:
- 压缩包里有文件夹 → 每个文件夹自动变成一个表情分组,文件夹名就是分组名
- 压缩包里只有图片 → ZIP 文件名自动成为分组名
解压、校验、分组、写入配置全部自动完成,几秒钟搞定。
3. 完全兼容子比原生表情面板
插件不改任何主题文件。表情上传后会自动出现在子比评论区表情面板里,和主题自带的默认表情同屏共存。
可以选择是否显示子比默认表情组,也可以给它改个名。
4. 自动适配对象存储 / CDN
用了腾讯云 COS、阿里云 OSS 或者 CDN 加速的站点,不需要额外配置。
插件会自动检测 wp_upload_dir() 是否被 CDN 插件改写,如果发现你的站点启用了对象存储,表情 URL 会自动指向 CDN 地址,不用手动改。
5. 兼容主题自带表情目录
如果你之前在子比主题的 /img/smilies/ 目录下放过表情,插件开启”兼容主题默认表情目录”后,这些表情会和插件表情合并显示,不会浪费之前的工作。
6. 灵活的后台配置
基于子比主题同款的 CSF 框架,设置页面风格统一:
| 配置项 | 说明 |
|---|---|
| 启用/关闭 | 一键开关,不影响主题 |
| 默认表情组 | 保留还是隐藏子比自带表情 |
| 表情存储路径 | 可自定义(默认在 uploads 下) |
| 表情访问 URL | 配合 CDN 可手动指定 |
| 每组最大数量 | 控制单个分组最多显示多少张 |
| 面板宽度 | 适配不同主题布局 |
| 分组显示名 | 单独给每个分组起中文名 |
安装与使用
安装
- 下载插件 ZIP 包
- WordPress 后台 → 插件 → 安装插件 → 上传插件
- 上传并激活
- 确保当前使用的是 Zibll 子比主题(其他主题会自动停用并提示)
上传表情(两种方式)
方式一:逐张上传
- 后台 → 评论表情包组 → 后台上传
- 填写分组目录名(英文,如
cat、acg) - 可选填写分组显示名(中文,如”猫猫表情”)
- 选择图片文件(可多选)
- 点击”上传并保存”
方式二:ZIP 压缩包导入
- 把图片整理好(每个文件夹=一个分组),打成
.zip - 在同一页面下方找到”📦 上传表情压缩包”
- 选择 ZIP 文件,点击上传
- 自动解压、创建分组,页面刷新后即可看到
前端效果
上传完成后,打开任意文章评论区,点击表情按钮 —— 你的自定义表情分组已经出现在面板里了。
技术细节(给有需要的站长)
插件完全遵循 WordPress 插件开发规范:
- 过程式写法,不依赖 Composer,PHP 7.0+ 即可运行
- 表情文件存储在
wp-content/uploads/zibll-comment-emoticon/smilies/,走标准 uploads 体系 - URL 使用
wp_upload_dir()生成,天然兼容市面主流对象存储/CDN 插件 - 评论中表情以
[g=token]短代码存储,过滤comment_text和zib_message_content两个 hook 输出为<img>标签 - 前端表情数据通过
wp_localize_script一次性输出,无额外 AJAX 请求 - 所有文件上传有 nonce 校验 +
manage_options权限检查 +getimagesize()真实图片验证 - ZIP 解压有文件数量上限(500)、扩展名校验、路径安全过滤
常见问题
Q:上传后前台看不到表情?
A:检查两个地方 —— ① 插件是否已启用(基础设置 → 启用功能);② 分组下是否确实有图片(后台上传页底部有”已识别分组”列表)。
Q:用了 对象存储,表情图片无法显示?
A:都对象存储管理界面开启跨域访问,具体教程参考老唐文章https://www.zibll.com/886.html
Q:上传 ZIP 没反应?
A:大概率是浏览器缓存了旧版 JS。按 Ctrl+Shift+R 强制刷新页面,或者停用再启用插件。
Q:能支持 WebP 动图吗?
A:WebP 格式已支持,包括静态和动画 WebP。
Q:会和子比主题更新冲突吗?
A:不会。插件不修改任何主题文件,子比更新不受影响。
反馈
如果遇到问题或有功能建议,欢迎反馈。
插件截图













- 最新
- 最热
只看作者