67 lines
3.0 KiB
PHP
67 lines
3.0 KiB
PHP
<?php
|
|
/**
|
|
* 公开用户主页 — Hero 封面区
|
|
*
|
|
* @package AKSRT
|
|
* @since 5.0.0
|
|
*/
|
|
|
|
defined('ABSPATH') || exit;
|
|
|
|
$user = $args['user'] ?? null;
|
|
$user_id = $user ? (int) $user->ID : 0;
|
|
$dashboard = $args['dashboard'] ?? [];
|
|
$settings = $args['settings'] ?? [];
|
|
$show_cover = $settings['cover'] ?? true;
|
|
$show_follow = $settings['follow'] ?? true;
|
|
$is_own = $dashboard['is_own_profile'] ?? false;
|
|
$viewer_id = $dashboard['viewer_id'] ?? 0;
|
|
|
|
if (!$user) return;
|
|
|
|
$cover_url = get_user_meta($user_id, 'aksrt_user_cover', true) ?: '';
|
|
$avatar = get_avatar_url($user_id, ['size' => 96]);
|
|
$desc = $user->description ?: '';
|
|
$is_vip = function_exists('aksrt_is_vip') && aksrt_is_vip($user_id);
|
|
?>
|
|
|
|
<div class="uh-hero <?php echo $cover_url ? 'uh-hero--has-cover' : ''; ?>" <?php echo $cover_url ? 'style="background-image:url(' . esc_url($cover_url) . ')"' : ''; ?>>
|
|
<div class="uh-hero__overlay"></div>
|
|
<div class="uh-hero__content">
|
|
<div class="uh-hero__avatar">
|
|
<img src="<?php echo esc_url($avatar); ?>" alt="<?php echo esc_attr($user->display_name); ?>" width="96" height="96">
|
|
<?php if ($is_vip) : ?>
|
|
<span class="aksrt-vip-badge">VIP</span>
|
|
<?php endif; ?>
|
|
</div>
|
|
<div class="uh-hero__info">
|
|
<h2 class="uh-hero__name">
|
|
<?php echo esc_html($user->display_name); ?>
|
|
<?php if ($is_own) : ?>
|
|
<a href="<?php echo esc_url(get_edit_profile_url($user_id)); ?>" class="uh-hero__edit" title="<?php esc_attr_e('编辑资料', 'aksrt'); ?>">
|
|
<i class="fas fa-pen"></i>
|
|
</a>
|
|
<?php endif; ?>
|
|
</h2>
|
|
<?php if ($desc) : ?>
|
|
<p class="uh-hero__desc"><?php echo esc_html(wp_trim_words($desc, 50)); ?></p>
|
|
<?php endif; ?>
|
|
<div class="uh-hero__meta">
|
|
<span><i class="fas fa-calendar-alt"></i> <?php echo esc_html(date_i18n(get_option('date_format'), strtotime($user->user_registered))); ?></span>
|
|
<span><i class="fas fa-file-alt"></i> <?php echo esc_html($dashboard['post_count'] ?? 0); ?> <?php esc_html_e('篇文章', 'aksrt'); ?></span>
|
|
</div>
|
|
</div>
|
|
<?php if ($show_follow && !$is_own && $viewer_id > 0) : ?>
|
|
<?php
|
|
$is_following = function_exists('aksrt_is_following') && aksrt_is_following($viewer_id, $user_id);
|
|
?>
|
|
<button class="btn <?php echo $is_following ? 'btn-outline-primary' : 'btn-primary'; ?> uh-hero__follow-btn"
|
|
data-action="toggle-follow"
|
|
data-target-user="<?php echo esc_attr($user_id); ?>">
|
|
<i class="fas <?php echo $is_following ? 'fa-user-check' : 'fa-user-plus'; ?>"></i>
|
|
<?php echo $is_following ? esc_html__('已关注', 'aksrt') : esc_html__('关注', 'aksrt'); ?>
|
|
</button>
|
|
<?php endif; ?>
|
|
</div>
|
|
</div>
|