99 lines
4.4 KiB
PHP
99 lines
4.4 KiB
PHP
<?php
|
|
/**
|
|
* 用户中心 — 仪表盘面板
|
|
*
|
|
* 显示当前登录用户的基本信息概览、积分、VIP状态、快捷操作。
|
|
*
|
|
* @package AKSRT
|
|
* @since 5.0.0
|
|
*/
|
|
|
|
defined('ABSPATH') || exit;
|
|
|
|
$user_id = get_current_user_id();
|
|
$user = wp_get_current_user();
|
|
$dashboard = function_exists('aksrt_get_user_dashboard_view')
|
|
? aksrt_get_user_dashboard_view($user_id, ['viewer_id' => $user_id])
|
|
: [];
|
|
|
|
$credits_enabled = !empty($dashboard['credits_enabled']);
|
|
$credit_balance = $dashboard['credit_balance'] ?? 0;
|
|
$currency_name = $dashboard['currency_name'] ?? __('积分', 'aksrt');
|
|
$is_vip = function_exists('aksrt_is_vip') && aksrt_is_vip($user_id);
|
|
$post_count = (int) ($dashboard['post_count'] ?? 0);
|
|
$comment_count = (int) ($dashboard['comment_count'] ?? 0);
|
|
$favorite_count = (int) ($dashboard['favorite_count'] ?? 0);
|
|
$order_count = (int) ($dashboard['order_count'] ?? 0);
|
|
?>
|
|
|
|
<div class="uc-dashboard">
|
|
<!-- 用户信息卡片 -->
|
|
<div class="uc-dashboard__profile">
|
|
<div class="uc-dashboard__avatar">
|
|
<?php echo get_avatar($user_id, 80); ?>
|
|
<?php if ($is_vip) : ?>
|
|
<span class="aksrt-vip-badge aksrt-vip-badge--sm">VIP</span>
|
|
<?php endif; ?>
|
|
</div>
|
|
<div class="uc-dashboard__info">
|
|
<h3 class="uc-dashboard__name"><?php echo esc_html($user->display_name); ?></h3>
|
|
<p class="uc-dashboard__desc">
|
|
<?php
|
|
$desc = $user->description ?: __('这个人很懒,什么都没写~', 'aksrt');
|
|
echo esc_html(wp_trim_words($desc, 30));
|
|
?>
|
|
</p>
|
|
<div class="uc-dashboard__meta">
|
|
<span><i class="fas fa-calendar-alt"></i> <?php echo esc_html(__('注册于', 'aksrt') . ' ' . date_i18n(get_option('date_format'), strtotime($user->user_registered))); ?></span>
|
|
</div>
|
|
</div>
|
|
<a href="<?php echo esc_url(get_edit_profile_url($user_id)); ?>" class="btn btn-outline-primary btn-sm">
|
|
<i class="fas fa-edit"></i> <?php esc_html_e('编辑资料', 'aksrt'); ?>
|
|
</a>
|
|
</div>
|
|
|
|
<!-- 数据统计 -->
|
|
<div class="uc-dashboard__stats">
|
|
<a href="<?php echo esc_url(get_author_posts_url($user_id)); ?>" class="uc-dashboard__stat">
|
|
<span class="uc-dashboard__stat-num"><?php echo $post_count; ?></span>
|
|
<span class="uc-dashboard__stat-label"><?php esc_html_e('文章', 'aksrt'); ?></span>
|
|
</a>
|
|
<a href="#uc-comments" class="uc-dashboard__stat">
|
|
<span class="uc-dashboard__stat-num"><?php echo $comment_count; ?></span>
|
|
<span class="uc-dashboard__stat-label"><?php esc_html_e('评论', 'aksrt'); ?></span>
|
|
</a>
|
|
<a href="#uc-favorites" class="uc-dashboard__stat">
|
|
<span class="uc-dashboard__stat-num"><?php echo $favorite_count; ?></span>
|
|
<span class="uc-dashboard__stat-label"><?php esc_html_e('收藏', 'aksrt'); ?></span>
|
|
</a>
|
|
<?php if ($credits_enabled) : ?>
|
|
<a href="#uc-credits" class="uc-dashboard__stat">
|
|
<span class="uc-dashboard__stat-num"><?php echo esc_html(number_format($credit_balance, 2)); ?></span>
|
|
<span class="uc-dashboard__stat-label"><?php echo esc_html($currency_name); ?></span>
|
|
</a>
|
|
<?php endif; ?>
|
|
</div>
|
|
|
|
<!-- 快捷操作 -->
|
|
<div class="uc-dashboard__actions">
|
|
<a href="<?php echo esc_url(get_edit_profile_url($user_id)); ?>" class="uc-dashboard__action">
|
|
<i class="fas fa-user-edit"></i>
|
|
<span><?php esc_html_e('编辑资料', 'aksrt'); ?></span>
|
|
</a>
|
|
<a href="<?php echo esc_url(get_edit_profile_url($user_id) . '#password'); ?>" class="uc-dashboard__action">
|
|
<i class="fas fa-key"></i>
|
|
<span><?php esc_html_e('修改密码', 'aksrt'); ?></span>
|
|
</a>
|
|
<?php if ($order_count > 0) : ?>
|
|
<a href="<?php echo esc_url(home_url('/orders/')); ?>" class="uc-dashboard__action">
|
|
<i class="fas fa-shopping-bag"></i>
|
|
<span><?php esc_html_e('我的订单', 'aksrt'); ?></span>
|
|
</a>
|
|
<?php endif; ?>
|
|
<a href="<?php echo esc_url(wp_logout_url(home_url())); ?>" class="uc-dashboard__action uc-dashboard__action--danger">
|
|
<i class="fas fa-sign-out-alt"></i>
|
|
<span><?php esc_html_e('退出登录', 'aksrt'); ?></span>
|
|
</a>
|
|
</div>
|
|
</div>
|