fix(users): keep management inside center
This commit is contained in:
@@ -16,8 +16,6 @@ add_filter('query_vars', function ($vars) {
|
||||
$vars[] = 'aksrt_user_center';
|
||||
$vars[] = 'aksrt_user_center_tab';
|
||||
$vars[] = 'aksrt_author_identifier';
|
||||
$vars[] = 'aksrt_orders';
|
||||
$vars[] = 'aksrt_revenue';
|
||||
return $vars;
|
||||
});
|
||||
|
||||
@@ -57,7 +55,7 @@ add_action('template_redirect', function () {
|
||||
$tab = $tab === 'balance' ? 'credits' : sanitize_key($tab);
|
||||
$allowed = class_exists('\\AKSRT\\User\\Center')
|
||||
? array_keys(\AKSRT\User\Center::get_instance()->get_dashboard_tabs())
|
||||
: ['profile', 'level', 'creator', 'comments', 'favorites', 'credits', 'vip', 'orders', 'auth', 'revenue', 'settings'];
|
||||
: ['profile', 'level', 'creator', 'posts', 'follow', 'comments', 'favorites', 'credits', 'vip', 'orders', 'auth', 'revenue', 'settings'];
|
||||
if (!in_array($tab, $allowed, true)) {
|
||||
global $wp_query;
|
||||
if ($wp_query instanceof WP_Query) { $wp_query->set_404(); }
|
||||
@@ -70,13 +68,8 @@ add_action('init', function () {
|
||||
add_rewrite_tag('%aksrt_user_center%', '([^&]+)');
|
||||
add_rewrite_tag('%aksrt_user_center_tab%', '([^/]+)');
|
||||
add_rewrite_tag('%aksrt_author_identifier%', '([^/]+)');
|
||||
add_rewrite_tag('%aksrt_orders%', '([0-1])');
|
||||
add_rewrite_tag('%aksrt_revenue%', '([0-1])');
|
||||
add_rewrite_rule('^user/([a-z0-9_-]+)/?$', 'index.php?aksrt_user_center=1&aksrt_user_center_tab=$matches[1]', 'top');
|
||||
add_rewrite_rule('^author/([^/]+)/?$', 'index.php?aksrt_author_identifier=$matches[1]', 'top');
|
||||
// Commerce center aliases (work even before WP page is assigned).
|
||||
add_rewrite_rule('^orders/?$', 'index.php?aksrt_orders=1', 'top');
|
||||
add_rewrite_rule('^revenue/?$', 'index.php?aksrt_revenue=1', 'top');
|
||||
});
|
||||
|
||||
// --- 3b. 统一模板拦截器(核心)---
|
||||
|
||||
@@ -106,19 +106,6 @@ $_aksrt_special_templates = [
|
||||
'title' => '个人中心',
|
||||
'fallback' => '/profile/',
|
||||
],
|
||||
// Commerce center pages (权益与消费 / 购物车 / 收益)
|
||||
'orders' => [
|
||||
'file' => 'templates/pages/page-orders.php',
|
||||
'slug' => 'orders',
|
||||
'title' => '我的订单',
|
||||
'fallback' => '/orders/',
|
||||
],
|
||||
'revenue' => [
|
||||
'file' => 'templates/pages/page-revenue.php',
|
||||
'slug' => 'revenue',
|
||||
'title' => '收益中心',
|
||||
'fallback' => '/revenue/',
|
||||
],
|
||||
'messages' => [
|
||||
'file' => 'templates/pages/page-messages.php',
|
||||
'slug' => 'messages',
|
||||
@@ -402,16 +389,6 @@ function aksrt_get_current_special_template_path(): string {
|
||||
return $profile_template ?: '';
|
||||
}
|
||||
|
||||
if (get_query_var('aksrt_orders')) {
|
||||
$orders_template = aksrt_locate_template_file('templates/pages/page-orders.php');
|
||||
return $orders_template ?: '';
|
||||
}
|
||||
|
||||
if (get_query_var('aksrt_revenue')) {
|
||||
$revenue_template = aksrt_locate_template_file('templates/pages/page-revenue.php');
|
||||
return $revenue_template ?: '';
|
||||
}
|
||||
|
||||
if (get_query_var('aksrt_sign')) {
|
||||
$auth_template = aksrt_get_auth_template_file((string) get_query_var('aksrt_auth_tab'), true);
|
||||
$auth_template_path = aksrt_locate_template_file($auth_template);
|
||||
|
||||
@@ -54,37 +54,6 @@ function aksrt_get_new_post_url(int $edit_id = 0): string {
|
||||
}
|
||||
endif;
|
||||
|
||||
if (!function_exists('aksrt_get_orders_page_url')) :
|
||||
/**
|
||||
* 订单中心 URL — 嵌在用户中心 tab=orders(zibll 同构)。
|
||||
* 旧 /orders/ 页面模板会 302 到此地址。
|
||||
*/
|
||||
function aksrt_get_orders_page_url(): string {
|
||||
if (function_exists('aksrt_get_user_center_tab_url')) {
|
||||
return aksrt_get_user_center_tab_url('orders');
|
||||
}
|
||||
if (function_exists('aksrt_get_user_center_url')) {
|
||||
return aksrt_get_user_center_url('orders');
|
||||
}
|
||||
return home_url('/user/orders/');
|
||||
}
|
||||
endif;
|
||||
|
||||
if (!function_exists('aksrt_get_revenue_page_url')) :
|
||||
/**
|
||||
* 收益中心 URL — 嵌在用户中心 tab=revenue。
|
||||
*/
|
||||
function aksrt_get_revenue_page_url(): string {
|
||||
if (function_exists('aksrt_get_user_center_tab_url')) {
|
||||
return aksrt_get_user_center_tab_url('revenue');
|
||||
}
|
||||
if (function_exists('aksrt_get_user_center_url')) {
|
||||
return aksrt_get_user_center_url('revenue');
|
||||
}
|
||||
return home_url('/user/revenue/');
|
||||
}
|
||||
endif;
|
||||
|
||||
if (!function_exists('aksrt_get_messages_page_url')) :
|
||||
/**
|
||||
* 消息中心页面 URL(模板 templates/pages/page-messages.php)。
|
||||
|
||||
Reference in New Issue
Block a user