Skip to content

Releases: ximangya/XITheme

曦主题 V1.1

Choose a tag to compare

@ximangya ximangya released this 30 Oct 12:05

V1.1(内部版本号 2610301)

发布日期:2026-10-30

本版为 V1.1 正式版,主要包含登录弹窗修复、商城组件随开关隐藏、站长身份组与管理员资料保护。

升级提示:直接覆盖主题文件即可,主题设置、文章、商品、订单、用户数据全部保留。商城保持原有开关状态,关闭时只隐藏相关组件,不会删除数据;已存在「站长」用户组的站点,若新版本未开启该开关,成员会在首次访问时自动恢复为管理员。

前端登录弹窗

  • 修复杂项:登录弹窗的玻璃高光描边外扩 1px,导致弹窗出现多余的横竖滚动条、注册表单底部被裁切;现在描边收在弹窗内,内容完整显示
  • 弹窗滚动条改为细样式(与主题配色一致),并禁止滚动穿透到页面
  • 小屏(≤420px)收紧弹窗内边距与最大高度,避免贴边

商城组件隐藏 / 禁用

  • 商城关闭时不再向区块编辑器注册商城相关区块(商品卡片、商品列表、购买按钮、价格方案、优惠券、满减、购买后可见、商品分类),区块插入器与前台投稿面板都不再出现这些组件
  • 商城的短代码仍然保留(旧文章不会出现裸标签),渲染时按「商城未开启」返回空内容
  • 商城关闭时,顶部购物车、商城小工具、用户中心订单、商品后台菜单、商品归档继续不注册 / 不显示
  • 商城总开关仍在「主题设置 → 用户&互动 → 商城系统」,需要时可重新开启

站长身份与后台资料保护

  • 新增「站长」用户组(xi_webmaster):权限实时复制自管理员,插件给管理员新增的能力会自动同步;前台身份标识显示为「站长」,后台用户列表与角色筛选可用
  • 新增开关「用户&互动 → 站长身份 → 启用『站长』用户组」,默认关闭;关闭开关或切换主题时,所有站长自动恢复为管理员并删除该角色,不会留下孤立角色或提权账号
  • 新增开关「禁止管理员互相修改资料」:开启后管理员只能修改自己的资料,不能编辑其他管理员或站长的资料(后台、REST API、任何 edit_user 校验都会生效);超级管理员不受限制,普通用户不受影响
  • 设置页显示当前站长成员与人数,可直接跳转到用户列表筛选

兼容性

  • WordPress 5.6 及以上(已在 7.1.3 测试)
  • PHP 7.0 及以上(已在 8.5 测试)
  • 多站点:站长角色的创建与还原按单站点处理,超级管理员不受「禁止管理员互相修改资料」限制

曦主题 V1.0 正式版

Choose a tag to compare

@ximangya ximangya released this 12 Oct 02:52

曦主题 V1.0 正式版

内部版本号 2610110 · 适用于 WordPress 5.6+ / PHP 7.0+

下载安装

下载下方的 xi-V1.0.zip,在 WordPress 后台「外观 → 主题 → 安装主题 → 上传主题」中上传并启用。

请使用 xi-V1.0.zip,不要使用 GitHub 自动生成的「Source code」压缩包(目录名不同,直接上传会导致主题路径不一致)。

安装包 SHA-256:bf589cde8821143172db0f86cd8402c2a7f7cbf0f3192639a75c2132993b23ab


更新内容

发布日期:2026-10-12

本版整合了 V1.0 测试构建 2610115、2610121 的全部改动。

升级提示:直接覆盖主题文件即可,主题设置、商品、订单数据全部保留。商城订单表会在首次访问时自动升级(新增运费、金额明细、商家备注字段),无需手动操作。


一、登录注册与安全

新增:后台安全入口与应急面板

  • 专属入口地址 wp-login.php?xi_safe=密钥,在「主题设置 → 用户&互动 → 登录注册」中查看,可一键发送到管理员邮箱、随时更换
  • 通过入口进入的浏览器 2 小时内不受前台登录弹窗、「禁止访问 wp-login.php」、登录失败锁定、IP 封禁影响(仍需正确密码)
  • 应急面板:关闭前台登录弹窗、清除登录锁定、关闭 IP 封禁、清除主题缓存并刷新固定链接、一键切换到 WordPress 默认主题、更换入口地址
  • 后台也无法进入时,可在 wp-config.php 加入 define('XI_SAFE_MODE', true); 临时开启安全模式
  • 错误密钥按 IP 计次,10 次后封禁一小时

修复:注册与登录的安全漏洞

  • 修复「关闭注册」可被绕过:直接向 WordPress 原生注册地址提交仍能注册。开启前台弹窗后,原生注册入口一律拒绝
  • 修复「注册需邮箱验证码」可被绕过:同一原生入口无需验证码即可注册
  • 修复登录失败锁定只对前台弹窗生效:wp-login.php 与 XML-RPC 可无限次尝试密码。现在三个入口统一计数,锁定期间即使密码正确也拒绝登录
  • 修复用户名规则与提示不一致:实际允许 @ . - 和空格。现在严格为 3-20 位字母、数字、下划线
  • 禁止注册手机号格式的用户名(可抢占他人的手机号登录入口)和 admin、root 等保留名称
  • 「新用户默认角色」被误设为管理员等高权限角色时,自动降为订阅者(前台注册与第三方登录自动注册均生效)

新增设置

  • 登录失败锁定次数(默认 5 次)
  • 每个 IP 每天注册上限(默认 5 个)
  • 关闭 XML-RPC 开关

二、商城

新增功能

  • 满减活动:多档位(如满 100 减 10、满 200 减 30),可设起止日期;商城首页横幅与倒计时,购物车提示「再买 ¥X 可减 ¥Y」
  • 积分抵扣现金:可设抵扣比例与最高比例;订单取消、超时关闭、退款时自动退回积分;超时关闭后才到账的订单会重新扣回
  • 运费:商品单独设置运费,同一订单取最高运费;支持满额包邮、会员包邮
  • 退货退款:已发货的实物订单可选「仅退款」或「退货退款」;商家同意后买家看到退货地址并填写退货单号,商家确认收货后退款并恢复库存
  • 统一结算:满减 → 优惠码 → 积分抵扣 → 运费由服务端同一套逻辑计算,确认订单页显示金额与实际扣款保证一致
  • 商品页:收藏、浏览量、联系商家(QQ / 微信二维码 / 文字)、「你已购买」区域直接显示已购的卡密和下载内容、相关商品、单商品购买须知
  • 订单页:待付款剩余时间倒计时、快递 100 物流查询、再次购买、完整金额明细
  • 商城首页:商品搜索
  • 后台:今日 / 近 7 天 / 近 30 天成交统计与热销商品、订单导出 CSV(防公式注入)、商家备注、库存预警邮件、商品一键复制
  • 新增「商城商品」侧栏小工具(销量 / 最新 / 价格 / 随机,列表或卡片样式)

修复

  • 退款后销量未扣回,未发货实物退款未恢复库存
  • 退货退款后商品已寄回但库存未恢复
  • 免费领取、后台补单的订单仍显示「申请售后」
  • 导出 CSV 在 PHP 8.4+ 出现弃用警告;导出表中「后台补单」显示为英文

三、编辑器区块(9 个 → 30 个)

新增 21 个区块,后台编辑器带设置面板与实时预览,前台投稿编辑器「插入」面板同步可用:

  • 商城(8 个):商品卡片、商品列表、购买按钮、价格方案、优惠券、满减活动、购买后可见、商品分类
  • 内容(13 个):链接卡片、文章卡片、步骤、时间轴、进度条、倒计时、视频(B 站 / YouTube / mp4)、音乐、对话、清单、数据卡片、常见问题(自动输出 FAQ 结构化数据)、作者卡片

所有新区块同时提供同名短代码 [xi_区块名];商城未开启时前台编辑器不显示商城区块。


四、顶部多功能组件按钮

  • 新样式:渐变(可设第二颜色)、霓虹发光、卡片式(图标 + 双行文字 + 箭头)
  • 点击动作:打开链接、打开搜索、打开登录(登录后自动隐藏)、每日签到、切换深浅色、回到顶部
  • 每个按钮可设副标题、尺寸、动效(扫光 / 脉冲 / 呼吸 / 浮动 / 摇晃)、显示对象(所有人 / 仅游客 / 仅登录用户)
  • 整组可设按钮形状(胶囊 / 圆角 / 小圆角)与对齐方式
  • 系统开启「减少动态效果」时自动关闭动效

五、其他修复

  • 修复「购买后可见」内容会出现在首页摘要中,以及游客可通过 REST API 读取
  • 修复会员调用付费内容解锁接口时仍被扣积分(会员本可免费查看)
  • 修复用户中心「我的收藏」只显示普通文章,收藏的论坛帖子、商品不显示
  • 修复收到非法编码文字时 8 处代码在 PHP 8.1+ 产生警告(可被用于刷日志)
  • 商品页浏览量统计生效
  • 「关于主题」页面开放 GitHub 仓库与 QQ 交流群入口
  • 页脚社交图标、ICP 备案号不再带有作者本人的默认值(默认只保留 RSS 图标,备案号留空不显示);已保存过设置的站点不受影响

兼容性

  • WordPress 5.6 及以上(已在 WordPress 7.1.3 测试)
  • PHP 7.0 及以上(已在 PHP 8.5 测试)