refactor: rename the theme brand and every identifier from AKSRT to Jio

Full-project rename. `git grep -i aksrt` is now empty apart from the
DBMigrator 3.3.0 changelog note that documents the rename itself.

Code identifiers
- PHP namespace AKSRT\ -> Jio\ (composer PSR-4 + 378 declarations)
- global constants AKSRT_* -> JIO_* (VERSION/DIR/URI, PAY_TYPE_*, CAPTCHA_*)
- procedural functions, hooks, options, meta keys, table names,
  cookies, query vars, ajax actions and nonces: aksrt_ -> jio_
- text domain aksrt -> jio; Theme Name -> Jio
- JS globals: aksrtData/aksrtAdminData/... -> jioData/jioAdminData/...,
  window.AKSRTCaptcha & friends -> window.JioCaptcha, Aksrt* -> Jio*
- Vue components Aks*.vue -> Jio*.vue (15 files renamed + imports)
- CSS classes/data-attrs/custom properties: aksrt- -> jio-
- REST namespace aksrt/v1 -> jio/v1 (incl. payment gateway callbacks)

Storage layer
- DB tables {prefix}aksrt_* -> {prefix}jio_*; SCHEMA_VERSION 3.2.0 -> 3.3.0
  so dbDelta creates the new names on install
- widget id_base aksrt_widget_* -> jio_widget_*
- uninstall.php drop list rebuilt from the actual migrator tables
  (dropped 3 stale entries, added the 17 missing ones)

Removed
- hardcoded https://api.aksrt.com/version.json default update endpoint;
  get_endpoint() now reads the 「更新端点」 setting and do_check() no-ops
  when it is empty

Files renamed: inc/helpers/aksrt-*.php -> jio-*.php (54),
assets/admin/src/components/form/Aks*.vue -> Jio*.vue (15).
Build artifacts regenerated: assets/css/build, assets/js/runtime,
assets/admin/build.

Verified: audit-psr4-paths errors=0, audit-admin-contracts errors=0
(warnings=56, unchanged baseline), 813/813 widget-system tests,
44/44 phpunit, php -l clean across all PHP.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
kate522andClaude Opus 5 committed 2026-11-01 20:05:04 +08:00
1 parent 5b16bc6e15
commit 35bb96e82f
997 files changed
+28216 -28188

No files matched your search

+16 -16
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -18,7 +18,7 @@ class GlobalSchema {
'key' => 'common',
'title' => '常用功能',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'performance', 'title' => '图像异步懒加载', 'fields' => [
['key' => 'lazy_posts_thumb', 'label' => '文章缩略图懒加载', 'type' => 'switch', 'default' => true],
@@ -41,7 +41,7 @@ class GlobalSchema {
'key' => 'logo',
'title' => 'LOGO图像',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'logo', 'title' => 'Logo 设置', 'fields' => [
['key' => 'site_logo', 'label' => '站点 Logo', 'type' => 'media', 'default' => ''],
@@ -59,7 +59,7 @@ class GlobalSchema {
'key' => 'seo',
'title' => 'SEO优化',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => 'SEO基础', 'fields' => [
['key' => 'seo_enabled', 'label' => '启用核心SEO优化', 'type' => 'switch', 'default' => true, 'help' => '关闭后主题不再输出 SEO head 标签。'],
@@ -98,7 +98,7 @@ class GlobalSchema {
'key' => 'layout',
'title' => '显示&布局',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'color', 'title' => '色彩方案', 'fields' => [
['key' => 'theme_mode', 'label' => '主题模式', 'type' => 'radio', 'default' => 'time-auto', 'help' => '此处设置为默认风格,实际显示风格以用户设置优先。如需固定风格,则关闭还需下方主题切换按钮', 'options' => [
@@ -164,7 +164,7 @@ class GlobalSchema {
'key' => 'code-highlight',
'title' => '代码高亮',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '代码高亮设置', 'fields' => [
['key' => 'highlight_kg', 'label' => '代码高亮开关', 'type' => 'switch', 'default' => true],
@@ -202,7 +202,7 @@ class GlobalSchema {
'key' => 'system-notice',
'title' => '系统公告',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '公告设置', 'fields' => [
['key' => 'system_notice_enabled', 'label' => '启用系统公告', 'type' => 'switch', 'default' => true],
@@ -292,7 +292,7 @@ class GlobalSchema {
'key' => 'search',
'title' => '搜索功能',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '搜索基础', 'fields' => [
['key' => 'search_placeholder', 'label' => '搜索框提示文字', 'type' => 'input', 'default' => '开启精彩搜索'],
@@ -335,12 +335,12 @@ class GlobalSchema {
['key' => 'meilisearch', 'title' => 'Meilisearch 智能搜索', 'fields' => [
['key' => 'search_ms_s', 'label' => '启用 Meilisearch', 'type' => 'switch', 'default' => false],
['key' => 'search_ms_opt', 'label' => 'Meilisearch 参数', 'type' => 'fieldset', 'sanitize_type' => 'array', 'default' => [
'api_url' => 'http://127.0.0.1:7700', 'api_key' => '', 'index_prefix' => 'aksrt',
'api_url' => 'http://127.0.0.1:7700', 'api_key' => '', 'index_prefix' => 'jio',
'synonyms' => [['key' => 'wordpress', 'val' => 'wp,wordp,wordpre']],
], 'dependsOn' => ['key' => 'search_ms_s', 'value' => true], 'fields' => [
['key' => 'api_url', 'label' => 'API 地址', 'type' => 'input', 'default' => 'http://127.0.0.1:7700'],
['key' => 'api_key', 'label' => 'API 密钥', 'type' => 'input', 'default' => ''],
['key' => 'index_prefix', 'label' => '索引前缀', 'type' => 'input', 'default' => 'aksrt'],
['key' => 'index_prefix', 'label' => '索引前缀', 'type' => 'input', 'default' => 'jio'],
['key' => 'synonyms', 'label' => '同义词', 'type' => 'repeater', 'default' => [['key' => 'wordpress', 'val' => 'wp,wordp,wordpre']], 'addText' => '添加同义词', 'fields' => [
['key' => 'key', 'label' => '关键词', 'type' => 'input', 'default' => ''],
['key' => 'val', 'label' => '同义词', 'type' => 'textarea', 'default' => ''],
@@ -353,7 +353,7 @@ class GlobalSchema {
'key' => 'share',
'title' => '社交分享',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [[
'key' => 'share',
'title' => '社交分享',
@@ -385,12 +385,12 @@ class GlobalSchema {
],
]],
],
'email' => \AKSRT\Settings\MailTemplates::build_schema(),
'email' => \Jio\Settings\MailTemplates::build_schema(),
'custom-code' => [
'key' => 'custom-code',
'title' => '自定义代码',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'css', 'title' => '自定义 CSS', 'fields' => [
['key' => 'custom_css', 'label' => '自定义 CSS', 'type' => 'code', 'language' => 'css', 'default' => ''],
@@ -408,7 +408,7 @@ class GlobalSchema {
'key' => 'i18n',
'title' => '多语言翻译',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '基础配置', 'fields' => [
['key' => 'i18n_enabled', 'label' => '启用多语言', 'type' => 'switch', 'default' => false],
@@ -423,7 +423,7 @@ class GlobalSchema {
['label' => 'Español', 'value' => 'es'],
['label' => 'Русский', 'value' => 'ru'],
]],
['key' => 'i18n_auto_detect', 'label' => '自动检测浏览器语言', 'type' => 'switch', 'default' => true, 'help' => '基于浏览器 Accept-Language 自动切换(AKSRT 方案,区别于 legacy IP 定位方案)'],
['key' => 'i18n_auto_detect', 'label' => '自动检测浏览器语言', 'type' => 'switch', 'default' => true, 'help' => '基于浏览器 Accept-Language 自动切换(Jio 方案,区别于 legacy IP 定位方案)'],
]],
['key' => 'languages', 'title' => '语言管理', 'fields' => [
['key' => 'i18n_available_langs', 'label' => '可用语言列表', 'type' => 'textarea', 'default' => "zh-CN|简体中文\nen|English\nzh-TW|繁體中文\nja|日本語\nko|한국어\nfr|Français\nde|Deutsch\nes|Español\nru|Русский", 'help' => '每行一个语言,格式:代码|名称(9 种内置语言)'],
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema\PostList;
namespace Jio\Admin\Schema\PostList;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaPostListList {
'key' => 'list',
'title' => '文章列表',
'version' => '9.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
[
'key' => 'order',
+2 -2
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
+3 -3
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaExtensionsAudit {
'key' => 'audit',
'title' => 'API内容审核',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'provider', 'title' => '审核接口', 'fields' => [
['key' => 'content_audit_enabled', 'label' => '启用内容审核', 'type' => 'switch', 'default' => false],
+3 -3
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaExtensionsIP {
'key' => 'ip',
'title' => 'IP归属地',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '基础配置', 'fields' => [
['key' => 'ip_geo_enabled', 'label' => '启用 IP 归属地', 'type' => 'switch', 'default' => false],
+3 -3
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaExtensionsPush {
'key' => 'push',
'title' => '百度推送',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '推送配置', 'fields' => [
['key' => 'baidu_push_enabled', 'label' => '启用百度推送', 'type' => 'switch', 'default' => false],
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaExtensionsSecurity {
'key' => 'security',
'title' => '网站安全',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'brush_post', 'title' => '[防刷机制]发布限制', 'description' => '限制单个用户发布文章、帖子、板块的总数量(为0则不限制)', 'fields' => [
['key' => 'security_brush_post_10min', 'label' => '10分钟内最多发布 (篇)', 'type' => 'number', 'default' => 20, 'min' => 0, 'max' => 200],
+3 -3
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaExtensionsSystem {
'key' => 'system',
'title' => '系统工具',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'optimize', 'title' => 'WordPress 优化', 'fields' => [
['key' => 'hide_admin_bar', 'label' => '前台关闭顶部admin_bar', 'type' => 'switch', 'default' => true, 'help' => '开启后前台不显示WordPress顶部黑条'],
+7 -7
View File
@@ -2,10 +2,10 @@
/**
* legacy V9.0 page/display settings contract.
*
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -33,7 +33,7 @@ class SchemaPageDisplay {
'key' => $key,
'title' => $title,
'version' => '9.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [['key' => $key, 'fields' => $fields]],
];
}
@@ -52,7 +52,7 @@ class SchemaPageDisplay {
self::field('nav_scroll_down_hide', '页面向下滚动时隐藏', 'switcher', true, ['dependsOn' => self::enabled('nav_fixed'), 'description' => '下滚动隐藏,上滚动显示。']),
self::field('nav_newposts', 'Add发布按钮', 'switcher', true, ['description' => '顶部导航显示文章投稿按钮。']),
self::field('nav_newposts_radius', '按钮圆角', 'switcher', true, ['dependsOn' => self::enabled('nav_newposts')]),
self::field('nav_newposts_class', '按钮颜色', 'palette', 'jb-blue', ['dependsOn' => self::enabled('nav_newposts'), 'options' => self::aksrt_palette()]),
self::field('nav_newposts_class', '按钮颜色', 'palette', 'jb-blue', ['dependsOn' => self::enabled('nav_newposts'), 'options' => self::jio_palette()]),
self::field('nav_newposts_text', '按钮文案', 'textarea', '<i class="fa fas fa-fw fa-pencil-alt"></i>发布', ['dependsOn' => self::enabled('nav_newposts'), 'sanitize_type' => 'html', 'rows' => 1]),
]);
}
@@ -85,7 +85,7 @@ class SchemaPageDisplay {
self::field('footer_t1_img', '日间模式图片', 'upload', $img . 'logo.png'),
self::field('footer_t1_img_dark', '夜间模式图片', 'upload', $img . 'logo_dark.png'),
self::field('footer_t1_t', '首行文字', 'text', ''),
self::field('fcode_t1_code', '更多内容', 'textarea', 'AKSRT 主题专为博客、自媒体、资讯类的网站设计开发,简约优雅的设计风格,全面的前端用户功能,简单的模块化配置,欢迎您的体验', ['sanitize_type' => 'html', 'rows' => 3]),
self::field('fcode_t1_code', '更多内容', 'textarea', 'Jio 主题专为博客、自媒体、资讯类的网站设计开发,简约优雅的设计风格,全面的前端用户功能,简单的模块化配置,欢迎您的体验', ['sanitize_type' => 'html', 'rows' => 3]),
self::field('fcode_t2_code_1', '版块二第一行', 'textarea', '<a href="#">友链申请</a>' . "\n" . '<a href="#">免责声明</a>' . "\n" . '<a href="#">广告合作</a>' . "\n" . '<a href="#">关于我们</a>', ['sanitize_type' => 'html', 'rows' => 4]),
self::field('fcode_t2_code_2', '版块二第二行', 'textarea', self::copyright_default(), ['sanitize_type' => 'html', 'rows' => 3]),
self::field('footer_contact_m_s', '图标联系方式移动端显示', 'switcher', true),
@@ -181,7 +181,7 @@ class SchemaPageDisplay {
}
private static function card_fields(): array {
return [self::field('show_widget_bg', '模块背景', 'switcher', false, ['description' => '开启后整个模块显示统一背景;关闭后每张卡片单独显示背景。']), self::field('icon_radius4', '方形图标', 'switcher', false), self::field('cards', '添加卡片', 'group', [], ['button_title' => '添加内容', 'fields' => [self::field('title', '文案标题', 'textarea', '', ['sanitize_type' => 'rich_html']), self::field('desc', '文案简介', 'textarea', '', ['sanitize_type' => 'rich_html']), self::field('icon', '选择图标', 'icon', 'fa fas fa-magic'), self::field('customize_icon', '自定义图标', 'textarea', '', ['sanitize_type' => 'html']), self::field('icon_class', '图标颜色', 'palette', 'c-yellow', ['options' => self::aksrt_palette(true)]), self::field('link', '跳转链接', 'link', [])]])];
return [self::field('show_widget_bg', '模块背景', 'switcher', false, ['description' => '开启后整个模块显示统一背景;关闭后每张卡片单独显示背景。']), self::field('icon_radius4', '方形图标', 'switcher', false), self::field('cards', '添加卡片', 'group', [], ['button_title' => '添加内容', 'fields' => [self::field('title', '文案标题', 'textarea', '', ['sanitize_type' => 'rich_html']), self::field('desc', '文案简介', 'textarea', '', ['sanitize_type' => 'rich_html']), self::field('icon', '选择图标', 'icon', 'fa fas fa-magic'), self::field('customize_icon', '自定义图标', 'textarea', '', ['sanitize_type' => 'html']), self::field('icon_class', '图标颜色', 'palette', 'c-yellow', ['options' => self::jio_palette(true)]), self::field('link', '跳转链接', 'link', [])]])];
}
private static function orderby_fields(): array { return [self::field('lists', '显示排序方式', 'select', ['modified', 'views', 'like', 'comment_count'], ['multiple' => true, 'sortable' => true, 'options' => self::post_order_options(false)]), self::field('dropdown', '更多排序方式', 'switcher', false)]; }
@@ -201,7 +201,7 @@ class SchemaPageDisplay {
private static function options(array $options): array { $out = []; foreach ($options as $value => $label) { $out[] = ['label' => $label, 'value' => (string) $value]; } return $out; }
private static function device_options(): array { return self::options(['pc_s' => 'PC端显示', 'm_s' => '移动端显示']); }
private static function solid_palette(): array { return self::options(['ff648f' => '#ff648f', 'c246f5' => '#c246f5', '469cf5' => '#469cf5', '27bf41' => '#27bf41', 'fd6b4e' => '#fd6b4e', '2d2422' => '#2d2422']); }
private static function aksrt_palette(bool $transparent = false): array { $colors = $transparent ? ['transparent' => 'rgba(114,114,114,.1)'] : []; $colors += ['c-red' => 'rgba(255,84,115,.4)', 'c-yellow' => 'rgba(255,111,6,.4)', 'c-cyan' => 'rgba(8,196,193,.4)', 'c-blue' => 'rgba(41,151,247,.4)', 'c-blue-2' => 'rgba(77,130,249,.4)', 'c-green' => 'rgba(18,185,40,.4)', 'c-purple' => 'rgba(213,72,245,.4)', 'jb-red' => '#ff5473', 'jb-yellow' => '#ff8a00', 'jb-cyan' => '#08c4c1', 'jb-blue' => '#2997f7', 'jb-green' => '#12b928', 'jb-purple' => '#d548f5', 'jb-pink' => '#ff648f']; return self::options($colors); }
private static function jio_palette(bool $transparent = false): array { $colors = $transparent ? ['transparent' => 'rgba(114,114,114,.1)'] : []; $colors += ['c-red' => 'rgba(255,84,115,.4)', 'c-yellow' => 'rgba(255,111,6,.4)', 'c-cyan' => 'rgba(8,196,193,.4)', 'c-blue' => 'rgba(41,151,247,.4)', 'c-blue-2' => 'rgba(77,130,249,.4)', 'c-green' => 'rgba(18,185,40,.4)', 'c-purple' => 'rgba(213,72,245,.4)', 'jb-red' => '#ff5473', 'jb-yellow' => '#ff8a00', 'jb-cyan' => '#08c4c1', 'jb-blue' => '#2997f7', 'jb-green' => '#12b928', 'jb-purple' => '#d548f5', 'jb-pink' => '#ff648f']; return self::options($colors); }
private static function post_order_options(bool $with_default): array { $options = $with_default ? ['' => '保持默认'] : []; $options += ['modified' => '更新', 'date' => '发布', 'views' => '浏览', 'like' => '点赞', 'comment_count' => '评论', 'favorite' => '收藏', 'rand' => '随机']; return self::options($options); }
private static function header_layout_options(): array { $base = self::asset('assets/images/header-layout/'); return [['label' => '布局一', 'value' => '1', 'image' => $base . 'header_layout_1.png'], ['label' => '布局二', 'value' => '2', 'image' => $base . 'header_layout_2.png'], ['label' => '布局三', 'value' => '3', 'image' => $base . 'header_layout_3.png']]; }
private static function mobile_header_layout_options(): array { $base = self::asset('assets/images/header-layout/'); return [['label' => '居中', 'value' => 'center', 'image' => $base . 'mobile_header_layout_center.png'], ['label' => '居左', 'value' => 'left', 'image' => $base . 'mobile_header_layout_left.png']]; }
+13 -13
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -30,7 +30,7 @@ class SchemaPayment {
'key' => 'knowledge',
'title' => '知识付费',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'notice', 'title' => '说明', 'fields' => [
['key' => 'knowledge_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<p><b>知识付费</b></p><ul><li>知识付费功能主要分为文章付费、付费会员、余额系统、推广返佣、创作分成等功能组成,您可以根据您的需要开启对应功能</li><li>使用支付功能请先在「收款接口」页配置好收款通道</li></ul>'],
@@ -122,7 +122,7 @@ class SchemaPayment {
'key' => 'recharge',
'title' => '余额充值',
'version' => '1.2.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'notice', 'title' => '说明', 'fields' => [
['key' => 'recharge_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<p><b>用户余额功能:</b></p><ul><li>开启后用户可充值到余额,余额可用于全站消费</li><li>在下方设置默认的分成比例,同时支持单独为每一个用户设置独立的分成比例</li><li>可以在用户管理中,为某一个用户手动赠送余额</li></ul>'],
@@ -179,7 +179,7 @@ class SchemaPayment {
'key' => 'vip',
'title' => 'VIP会员',
'version' => '1.2.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'notice', 'title' => '说明', 'fields' => [
['key' => 'vip_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>开启付费会员功能之前,请先配置好收款接口,确保网站收款正常</li><li>会员功能的设置项目较多,请仔细核对,避免出现价格、时间的问题</li><li>配合设置名称、有效期等可搭配出不同类型的会员</li><li>管理员可在后台为用户单独开启会员</li></ul>'],
@@ -322,7 +322,7 @@ class SchemaPayment {
'key' => 'revenue',
'title' => '创作分成',
'version' => '2.1.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'notice', 'title' => '说明', 'fields' => [
['key' => 'revenue_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>开启创作分成后,用户发布的付费内容则按设置的比例收入与用户分成</li><li>在下方设置默认的分成比例,同时支持单独为每一个用户设置独立的分成比例</li><li>用户分成比例是按照订单实收现金并扣除推广佣金后,再按设置的比例分成</li><li>禁用此功能后,所有收款将不会与作者分成</li></ul>'],
@@ -357,7 +357,7 @@ class SchemaPayment {
'key' => 'affiliate',
'title' => '推广返佣',
'version' => '1.1.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'notice', 'title' => '说明', 'fields' => [
['key' => 'affiliate_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>识别模式「绑定注册」:用户只要是通过任意推广链接注册的,今后此用户消费均会给推荐人返佣</li><li>识别模式「仅推广链接」:只有通过推广链接购买的才会给推荐人返佣,不会考虑是否是推荐注册的</li><li>开启的订单类型如果一个都不勾选,则代表该用户类型不参与此功能</li><li>您可以根据网站的VIP设置相互配合设置相应的规则</li><li>下面的设置为全局设置,还可以单独为每一个用户设置规则和比例</li></ul>'],
@@ -436,10 +436,10 @@ class SchemaPayment {
'key' => 'gateway',
'title' => '收款接口',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'notice', 'title' => '说明', 'fields' => [
['key' => 'gateway_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>以下收款接口,主题仅提供API接入服务,收款平台的可靠性请自行斟酌!</li><li>涉及到资金及信息安全,有相关执照的商家推荐使用官方接口</li><li>微信 / 支付宝接口可在「官方」与「易支付」之间选择;PayPal 与 Stripe 独立开关</li><li>异步回调由各网关验签,无需额外口令;回调地址固定为 /wp-json/aksrt/v1/payment/{gateway}/{notify|return}</li></ul>'],
['key' => 'gateway_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>以下收款接口,主题仅提供API接入服务,收款平台的可靠性请自行斟酌!</li><li>涉及到资金及信息安全,有相关执照的商家推荐使用官方接口</li><li>微信 / 支付宝接口可在「官方」与「易支付」之间选择;PayPal 与 Stripe 独立开关</li><li>异步回调由各网关验签,无需额外口令;回调地址固定为 /wp-json/jio/v1/payment/{gateway}/{notify|return}</li></ul>'],
]],
['key' => 'channels', 'title' => '收款接口选择', 'fields' => [
['key' => 'pay_wechat_sdk_options', 'label' => '微信收款接口', 'type' => 'select', 'default' => 'null', 'options' => [
@@ -469,7 +469,7 @@ class SchemaPayment {
['key' => 'settle_unit', 'label' => '结算货币单位', 'type' => 'input', 'default' => '元', 'help' => '如果接入的收款方式与本地的货币类型不同,则在此配置结算汇率及单位'],
]],
['key' => 'pay_sdk_custom_title_s', 'label' => '自定义收款标题', 'type' => 'switch', 'default' => false, 'help' => '默认为付款类型加网站名,如需自定义请开启'],
['key' => 'pay_sdk_custom_title', 'label' => '自定义收款标题', 'type' => 'input', 'default' => '', 'dependsOn' => ['key' => 'pay_sdk_custom_title_s', 'value' => true], 'help' => '可使用变量:订单类型 %order_type%,例如:%order_type%-AKSRT;注意控制总长度,太长会导致部分接口报错'],
['key' => 'pay_sdk_custom_title', 'label' => '自定义收款标题', 'type' => 'input', 'default' => '', 'dependsOn' => ['key' => 'pay_sdk_custom_title_s', 'value' => true], 'help' => '可使用变量:订单类型 %order_type%,例如:%order_type%-Jio;注意控制总长度,太长会导致部分接口报错'],
]],
['key' => 'order', 'title' => '订单与编号', 'fields' => [
['key' => 'payment_order_expiry', 'label' => '订单支付时效(分钟)', 'type' => 'number', 'default' => 30, 'min' => 5, 'max' => 1440, 'help' => '用户下单后,最大支付时间,超过后订单将自动关闭(不能低于5分钟)'],
@@ -486,7 +486,7 @@ class SchemaPayment {
], 'help' => '收银台支付方式显示顺序;仅显示已开启的接口'],
]],
['key' => 'alipay', 'title' => '支付宝官方', 'collapsible' => true, 'defaultCollapsed' => true, 'dependsOn' => ['key' => 'pay_alipay_sdk_options', 'value' => 'official_alipay'], 'fields' => [
['key' => 'alipay_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>支付宝公钥为必填项目(公钥错误可以成功付款,但会回调失败)</li><li>回调地址固定为 /wp-json/aksrt/v1/payment/alipay/{notify|return}</li><li>电脑端按「电脑端收款」选择站内二维码或跳转;手机端开启 H5 时跳转,否则显示二维码</li></ul>'],
['key' => 'alipay_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>支付宝公钥为必填项目(公钥错误可以成功付款,但会回调失败)</li><li>回调地址固定为 /wp-json/jio/v1/payment/alipay/{notify|return}</li><li>电脑端按「电脑端收款」选择站内二维码或跳转;手机端开启 H5 时跳转,否则显示二维码</li></ul>'],
['key' => 'alipay_appid', 'label' => '当面付:APPID', 'type' => 'input', 'default' => ''],
['key' => 'alipay_privatekey', 'label' => '当面付:应用私钥', 'type' => 'textarea', 'sanitize_type' => 'code', 'default' => '', 'rows' => 4, 'secret' => true],
['key' => 'alipay_pc_mode', 'label' => '电脑端收款', 'type' => 'select', 'default' => 'facepay', 'options' => [
@@ -499,7 +499,7 @@ class SchemaPayment {
['key' => 'alipay_root_cert_path', 'label' => '支付宝根证书路径', 'type' => 'input', 'default' => '', 'help' => 'alipayRootCert.crt 绝对路径。'],
]],
['key' => 'wechat', 'title' => '微信官方', 'collapsible' => true, 'defaultCollapsed' => true, 'dependsOn' => ['key' => 'pay_wechat_sdk_options', 'value' => 'official_wechat'], 'fields' => [
['key' => 'wechat_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>微信企业支付:官方接口,商家可申请,有年费,申请较为复杂</li><li>回调地址固定为 /wp-json/aksrt/v1/payment/wechatpay/{notify|return},请配置 Native 支付回调链接</li><li>电脑端显示站内二维码;手机端按下方开关选择 H5 跳转或微信内 JSAPI,未开启时同样显示二维码</li></ul>'],
['key' => 'wechat_notice', 'label' => '', 'type' => 'content', 'ui_only' => true, 'content' => '<ul><li>微信企业支付:官方接口,商家可申请,有年费,申请较为复杂</li><li>回调地址固定为 /wp-json/jio/v1/payment/wechatpay/{notify|return},请配置 Native 支付回调链接</li><li>电脑端显示站内二维码;手机端按下方开关选择 H5 跳转或微信内 JSAPI,未开启时同样显示二维码</li></ul>'],
['key' => 'wechat_merchantid', 'label' => '商户号 PartnerID', 'type' => 'input', 'default' => ''],
['key' => 'wechat_appid', 'label' => '授权绑定的AppID', 'type' => 'input', 'default' => ''],
['key' => 'wechat_h5', 'label' => '移动端 H5 跳转', 'type' => 'switch', 'default' => false, 'help' => '需开通 H5 支付。开启后手机浏览器(非微信内)跳转微信付款;关闭则显示站内二维码'],
@@ -545,7 +545,7 @@ class SchemaPayment {
'key' => 'withdrawal',
'title' => '提现策略',
'version' => '1.1.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '提现门槛', 'fields' => [
['key' => 'affiliate_min_withdrawal', 'label' => '提现最低金额限制', 'type' => 'input', 'sanitize_type' => 'money_decimal', 'default' => '50.00', 'help' => '当用户可提现总金额(推广佣金、余额、创作分成)高于多少时候,才能发起提现'],
+11 -11
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -16,7 +16,7 @@ class SchemaPermissions {
*/
private static function upload_user_type_options(): array {
$options = [];
foreach (\AKSRT\Attachment\UploadLimits::user_type_options() as $value => $label) {
foreach (\Jio\Attachment\UploadLimits::user_type_options() as $value => $label) {
$options[] = ['label' => $label, 'value' => $value];
}
return $options;
@@ -29,16 +29,16 @@ class SchemaPermissions {
*/
private static function upload_mime_user_type_options(): array {
$options = [
['label' => __('所有用户', 'aksrt'), 'value' => 'all'],
['label' => __('所有用户', 'jio'), 'value' => 'all'],
];
foreach (\AKSRT\Attachment\UploadLimits::user_type_options() as $value => $label) {
foreach (\Jio\Attachment\UploadLimits::user_type_options() as $value => $label) {
$options[] = ['label' => $label, 'value' => $value];
}
return $options;
}
public static function build(): array {
$provider_meta = function_exists('aksrt_captcha_provider_metadata') ? aksrt_captcha_provider_metadata() : [];
$provider_meta = function_exists('jio_captcha_provider_metadata') ? jio_captcha_provider_metadata() : [];
$provider_options = [['label' => '关闭', 'value' => '']];
$provider_fields = [];
foreach ($provider_meta as $provider => $meta) {
@@ -50,7 +50,7 @@ class SchemaPermissions {
'key' => $provider,
'label' => (string) ($meta['label'] ?? $provider) . ' 配置',
'type' => 'custom',
'default' => function_exists('aksrt_captcha_provider_defaults') ? aksrt_captcha_provider_defaults($provider) : [],
'default' => function_exists('jio_captcha_provider_defaults') ? jio_captcha_provider_defaults($provider) : [],
'captcha_provider' => $provider,
];
}
@@ -63,7 +63,7 @@ class SchemaPermissions {
'key' => 'login',
'title' => '人机验证',
'version' => '1.1.0',
'option_key' => 'aksrt_captcha_config',
'option_key' => 'jio_captcha_config',
'groups' => [
['key' => 'basic', 'title' => '基础开关', 'fields' => [
['key' => 'enabled', 'label' => '启用人机验证', 'type' => 'switch', 'default' => false],
@@ -92,7 +92,7 @@ class SchemaPermissions {
'key' => 'attachment',
'title' => '附件配置',
'version' => '1.2.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'size-limits', 'title' => '上传大小限制', 'fields' => [
['key' => 'size_limit_notice', 'label' => '服务器环境提示', 'type' => 'notice', 'alertType' => 'warning', 'alertContent' => '设置上传大小,请考虑服务器负荷、硬盘,以及服务器最大能支持的范围。实际上传大小取「主题限制」与「PHP 环境限制」的较小值,超过 PHP 环境限制时请调整 php.ini 的 upload_max_filesize 与 post_max_size。'],
@@ -139,7 +139,7 @@ class SchemaPermissions {
'key' => 'moderation',
'title' => '评论审核',
'version' => '1.0.0',
'option_key' => 'aksrt_moderation_config',
'option_key' => 'jio_moderation_config',
'groups' => [
['key' => 'basic', 'title' => '审核总开关', 'fields' => [
['key' => 'enabled', 'label' => '启用审核系统', 'type' => 'switch', 'default' => false],
@@ -174,7 +174,7 @@ class SchemaPermissions {
'key' => 'capabilities',
'title' => '基本权限',
'version' => '1.1.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [],
],
],
+9 -9
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -19,7 +19,7 @@ class SchemaPostList {
'key' => 'thumb',
'title' => '列表缩略图',
'version' => '9.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'source', 'title' => '图片来源', 'description' => '缩略图获取优先级:文章特色图像 > 外链特色图像 > 文章首图 > 分类封面图 > 备用缩略图 > 懒加载预载图。', 'fields' => [
['key' => 'list_thumb_slides_s', 'label' => '幻灯片缩略图', 'type' => 'switch', 'default' => true, 'description' => '允许幻灯片作为列表缩略图'],
@@ -47,7 +47,7 @@ class SchemaPostList {
'key' => 'page',
'title' => '文章页面',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'post_page', 'title' => '文章页面', 'fields' => [
['key' => 'article_image_cover', 'label' => '图片封面', 'type' => 'switcher', 'default' => true, 'description' => '允许设置文章页顶部显示封面图'],
@@ -130,7 +130,7 @@ class SchemaPostList {
'key' => 'filter',
'title' => '高级筛选',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'advanced_filter', 'title' => '高级筛选', 'fields' => [
['key' => 'custom_filter_show', 'label' => '高级筛选默认显示', 'type' => 'checkbox', 'default' => [], 'options' => [
@@ -180,7 +180,7 @@ class SchemaPostList {
'key' => 'feature',
'title' => '文章功能',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'feature', 'title' => '文章功能', 'fields' => [
['key' => 'article_nav', 'label' => '文章目录树', 'type' => 'switcher', 'default' => true, 'description' => '默认开关,每篇文章可单独设置。开启后请自行添加文章目录树模块到侧边栏(文章内标题超过3个才会显示)'],
@@ -222,7 +222,7 @@ class SchemaPostList {
'key' => 'comment',
'title' => '评论设置',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'comment', 'title' => '评论设置', 'fields' => [
['key' => 'close_comments', 'label' => '关闭文章评论功能', 'type' => 'switcher', 'default' => false, 'description' => '部分网站无需交互,或需备案审核,可在此关闭所有文章的评论功能。同时每一篇文章可单独关闭评论功能'],
@@ -258,7 +258,7 @@ class SchemaPostList {
'key' => 'pay',
'title' => '付费内容',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '付费设置', 'fields' => [
['key' => 'post_pay_enable', 'label' => '启用付费内容', 'type' => 'switch', 'default' => false],
@@ -284,7 +284,7 @@ class SchemaPostList {
'key' => 'submit',
'title' => '前台投稿',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'submit', 'title' => '前台投稿', 'fields' => [
['key' => 'post_article_s', 'label' => '启用前台投稿', 'type' => 'switcher', 'default' => true, 'description' => '此功能启用后,可以在权限管理中设置用户的发布、审核权限'],
+2 -2
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
+3 -3
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaToolsBackup {
'key' => 'backup',
'title' => '数据备份',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'backup', 'title' => '备份设置', 'fields' => [
['key' => 'backup_auto', 'label' => '自动备份', 'type' => 'switch', 'help' => '启用自动定时备份'],
+3 -3
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,7 +14,7 @@ class SchemaToolsHealth {
'key' => 'health',
'title' => '健康检查',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'check', 'title' => '环境检查', 'fields' => [
['key' => 'php_version', 'label' => 'PHP 版本', 'type' => 'display', 'help' => '建议 7.4+'],
+4 -4
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -14,11 +14,11 @@ class SchemaToolsImportExport {
'key' => 'import-export',
'title' => '导入导出',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'export', 'title' => '导出配置', 'fields' => [
['key' => 'export_settings', 'label' => '导出主题设置', 'type' => 'button', 'help' => '导出当前所有主题配置为 JSON 文件'],
['key' => 'export_options', 'label' => '导出 WordPress 选项', 'type' => 'button', 'help' => '导出 aksrt_settings 等选项'],
['key' => 'export_options', 'label' => '导出 WordPress 选项', 'type' => 'button', 'help' => '导出 jio_settings 等选项'],
]],
['key' => 'import', 'title' => '导入配置', 'fields' => [
['key' => 'import_settings', 'label' => '导入主题设置', 'type' => 'file', 'accept' => '.json', 'help' => '导入主题配置文件(将覆盖当前设置)'],
+13 -13
View File
@@ -1,9 +1,9 @@
<?php
/**
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema;
namespace Jio\Admin\Schema;
defined('ABSPATH') || exit;
@@ -111,7 +111,7 @@ class SchemaUsers {
'key' => 'auth',
'title' => '注册登录',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'register', 'title' => '注册设置', 'fields' => [
['key' => 'close_sign', 'label' => '一键禁用登录注册', 'type' => 'switch', 'default' => false, 'desc' => '开启后前台禁用全部注册/登录入口(含社交登录),不影响后台登录'],
@@ -139,7 +139,7 @@ class SchemaUsers {
['key' => 'sign_modal_auto_waiting_time', 'label' => '弹窗等待秒数', 'type' => 'number', 'default' => 5, 'min' => 1, 'max' => 100, 'desc' => '页面加载多少秒后弹出登录窗'],
['key' => 'sign_modal_auto_expires', 'label' => '弹窗周期(小时)', 'type' => 'number', 'default' => 1, 'min' => 0, 'max' => 2000, 'desc' => '关闭弹窗后多少小时内不再自动弹出,0=每次刷新都弹'],
['key' => 'replace_wp_login', 'label' => '替换WP登录页', 'type' => 'switch', 'default' => true],
['key' => 'admin_sign_key', 'label' => '应急登录 Key', 'type' => 'input', 'default' => '', 'desc' => '留空为禁用。管理员可通过 /wp-login.php?aksrt_bypass=<key> 绕过前台替换'],
['key' => 'admin_sign_key', 'label' => '应急登录 Key', 'type' => 'input', 'default' => '', 'desc' => '留空为禁用。管理员可通过 /wp-login.php?jio_bypass=<key> 绕过前台替换'],
['key' => 'user_signin_phone_s', 'label' => '手机号登录', 'type' => 'switch', 'default' => false, 'desc' => '允许用手机号作为用户名登录'],
['key' => 'user_signin_nopas_s', 'label' => '免密登录', 'type' => 'switch', 'default' => false],
['key' => 'user_signin_nopas_type', 'label' => '免密登录方式', 'type' => 'radio', 'default' => 'email', 'options' => [
@@ -234,7 +234,7 @@ class SchemaUsers {
'key' => 'notifications',
'title' => '消息通知',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '基础设置', 'fields' => [
['key' => 'message_s', 'label' => '站内通知总开关', 'type' => 'switch', 'default' => true],
@@ -292,7 +292,7 @@ class SchemaUsers {
'key' => 'oauth',
'title' => '第三方登录',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '基础设置', 'fields' => [
['key' => 'oauth_s', 'label' => '启用第三方登录', 'type' => 'switch', 'default' => false],
@@ -390,7 +390,7 @@ class SchemaUsers {
'key' => 'sms',
'title' => '短信接口',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'provider', 'title' => '短信接口', 'fields' => [
['key' => 'sms_sdk', 'label' => '设置短信接口', 'type' => 'select', 'default' => 'null', 'options' => [
@@ -432,7 +432,7 @@ class SchemaUsers {
'key' => 'credits',
'title' => '积分设置',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'basic', 'title' => '积分基础', 'fields' => [
['key' => 'points_s', 'label' => '启用积分系统', 'type' => 'switch', 'default' => true],
@@ -477,7 +477,7 @@ class SchemaUsers {
'key' => 'features',
'title' => '用户功能',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'profile-media', 'title' => '用户资料', 'fields' => [
['key' => 'avatar_upload_s', 'label' => '允许用户上传头像', 'type' => 'switch', 'default' => true],
@@ -510,7 +510,7 @@ class SchemaUsers {
'key' => 'verify',
'title' => '身份认证',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'apply', 'title' => '申请设置', 'fields' => [
['key' => 'user_auth_s', 'label' => '启用身份认证', 'type' => 'switch', 'default' => true],
@@ -525,7 +525,7 @@ class SchemaUsers {
'key' => 'level',
'title' => '用户等级',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'display', 'title' => '等级显示', 'fields' => [
['key' => 'user_level_s', 'label' => '启用用户等级', 'type' => 'switch', 'default' => true],
@@ -545,7 +545,7 @@ class SchemaUsers {
'key' => 'badge',
'title' => '用户徽章',
'version' => '2.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'display', 'title' => '徽章展示', 'fields' => [
['key' => 'user_medal_s', 'label' => '启用徽章/勋章系统', 'type' => 'switch', 'default' => false],
@@ -571,7 +571,7 @@ class SchemaUsers {
'key' => 'report',
'title' => '禁封/举报',
'version' => '1.1.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
// 字段集合、顺序、文案、默认值 1:1 对齐参考主题"用户&互动/禁封举报"
['key' => 'main', 'title' => '', 'fields' => [
+3 -3
View File
@@ -6,10 +6,10 @@
* assets/admin/src/schema/sections/users/ticket.js 保持 1:1
* (tests/widget-system/ticket-schema-contract.test.cjs 守护)。
*
* @package AKSRT
* @package Jio
*/
namespace AKSRT\Admin\Schema\Users;
namespace Jio\Admin\Schema\Users;
defined('ABSPATH') || exit;
@@ -20,7 +20,7 @@ class SchemaUsersTicket {
'key' => 'ticket',
'title' => '工单中心',
'version' => '1.0.0',
'option_key' => 'aksrt_settings',
'option_key' => 'jio_settings',
'groups' => [
['key' => 'main', 'title' => '工单功能', 'icon' => 'fa fas fa-headset', 'fields' => [
['key' => 'ticket_s', 'label' => '工单功能', 'type' => 'switch', 'default' => true, 'help' => '开启后用户可在用户中心提交工单;关闭后工单中心不再开放,后台工单列表仍可查看历史工单'],