继续 Workstream C 全量字段比对,并按用户裁定处理冲突:
- UsersLevel / UsersBadge 采用“保留但后移”策略,不兼容旧数据接口,继续沿用当前新型
sections/router 体系,在 users 主线中降权后移到 compat tools 分区。
- 按 Zibll 实际 options 默认值收敛一批高影响字段,打通 PHP schema + 前端 schema 两层:
* global/search: search_posts / search_no_page / search_custom_key_s / search_cat -> true
* forum: bbs_show_new_plate / bbs_post_pay_hide_type_s / bbs_post_pay_vip_price_s /
bbs_reply_paginate_ias_s / bbs_comment_upload_img / bbs_rewrite_suffix_html_s -> true
* shop: shop_s -> true, shop_breadcrumbs_shop_home -> false,
shop_rewrite_suffix_html_s -> true
* users: user_signup_no_repas / message_auto_clear_s / post_rewards_s /
user_report_img_s -> true
* post-list: cat_s -> false
验证:
- php -l 检查所有改动过的 PHP schema 文件均通过
- node --check 检查所有改动过的前端 schema 文件均通过
- shim 校验确认 users-level/users-badge 已从 users 主分区移出并以 secondaryEntry=true
落入 compat tools,且全站无路由碰撞
- 注:本 worktree 下缺少可执行 vite,未能在隔离副本中复跑 npm build;此前主副本同批次
IA 修正构建通过,本次继续只改 schema/sections 常量与默认值,已用语法校验覆盖
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
47 lines
2.8 KiB
PHP
47 lines
2.8 KiB
PHP
<?php
|
|
/**
|
|
* AKSRT_Admin_Schema_Forum_Permissions section schema.
|
|
*
|
|
* @package AKSRT
|
|
*/
|
|
|
|
defined('ABSPATH') || exit;
|
|
|
|
class AKSRT_Admin_Schema_Forum_Permissions {
|
|
|
|
public static function build(): array {
|
|
return [
|
|
'key' => 'permissions',
|
|
'title' => '权限配置',
|
|
'version' => '1.0.0',
|
|
'option_key' => 'aksrt_settings',
|
|
'groups' => [
|
|
['key' => 'posting', 'title' => '发帖限制', 'fields' => [
|
|
['key' => 'bbs_posts_add_limit_opt_max', 'label' => '每日发帖上限', 'type' => 'number', 'default' => 10, 'min' => 0, 'help' => '0 = 不限'],
|
|
['key' => 'bbs_plate_add_limit_opt_max', 'label' => '建版数量上限', 'type' => 'number', 'default' => 3, 'min' => 0],
|
|
]],
|
|
['key' => 'display_btns', 'title' => '按钮显示', 'fields' => [
|
|
['key' => 'bbs_show_new_plate', 'label' => '始终显示建版按钮', 'type' => 'switch', 'default' => true],
|
|
['key' => 'bbs_show_new_topic', 'label' => '始终显示发帖按钮', 'type' => 'switch', 'default' => true],
|
|
['key' => 'bbs_show_apply_moderator', 'label' => '始终显示申请版主', 'type' => 'switch', 'default' => true],
|
|
]],
|
|
['key' => 'paid_content', 'title' => '帖子付费', 'fields' => [
|
|
['key' => 'bbs_post_pay_hide_type_s', 'label' => '启用付费内容', 'type' => 'switch', 'default' => true],
|
|
['key' => 'bbs_post_pay_vip_price_s', 'label' => 'VIP 特价', 'type' => 'switch', 'default' => true],
|
|
['key' => 'bbs_post_pay_vip_1_discount', 'label' => '一级 VIP 折扣 (%)', 'type' => 'number', 'default' => 80, 'min' => 0, 'max' => 100],
|
|
['key' => 'bbs_post_pay_vip_2_discount', 'label' => '二级 VIP 折扣 (%)', 'type' => 'number', 'default' => 50, 'min' => 0, 'max' => 100],
|
|
['key' => 'bbs_post_pay_price_limit', 'label' => '最高定价', 'type' => 'number', 'default' => 1000, 'min' => 1],
|
|
]],
|
|
['key' => 'plate_follow', 'title' => '版块付费关注', 'fields' => [
|
|
['key' => 'bbs_plate_follow_pay_s', 'label' => '启用付费关注', 'type' => 'switch', 'default' => false],
|
|
['key' => 'bbs_plate_follow_pay_price', 'label' => '关注价格', 'type' => 'number', 'default' => 10, 'min' => 0],
|
|
['key' => 'bbs_plate_follow_pay_type', 'label' => '支付方式', 'type' => 'select', 'default' => 'money', 'options' => [
|
|
['label' => '现金', 'value' => 'money'],
|
|
['label' => '积分', 'value' => 'points'],
|
|
]],
|
|
]],
|
|
],
|
|
];
|
|
}
|
|
}
|