用户中心 credits/settings 渲染器整包拆分:编排器 + 子块

This commit is contained in:
kate522 committed 2026-07-10 22:38:37 +08:00
1 parent f43519b1df
commit 81d5647205
11 files changed
+442 -348

No files matched your search

@@ -0,0 +1,50 @@
<?php
/**
* User center credits: VIP membership card.
*
* Expects extracted $context vars.
*
* @package AKSRT
*/
defined('ABSPATH') || exit;
$vip_settings = is_array($vip_settings ?? null) ? $vip_settings : [];
if (empty($vip_settings['enabled'])) {
return;
}
$is_vip_user = function_exists('aksrt_is_vip') && aksrt_is_vip($user_id);
?>
<div class="uc-vip-card<?php echo $is_vip_user ? ' uc-vip-card--active' : ''; ?>">
<div class="uc-vip-card__bg"></div>
<div class="uc-vip-card__content">
<div class="uc-vip-card__header">
<div class="uc-vip-card__icon">
<i class="fas fa-crown" aria-hidden="true"></i>
</div>
<div class="uc-vip-card__info">
<span class="uc-vip-card__label"><?php echo esc_html($vip_settings['name'] ?? __('VIP会员', 'aksrt')); ?></span>
<?php if ($is_vip_user) : ?>
<span class="uc-vip-card__status uc-vip-card__status--active"><?php esc_html_e('已开通', 'aksrt'); ?></span>
<?php else : ?>
<span class="uc-vip-card__status"><?php esc_html_e('未开通', 'aksrt'); ?></span>
<?php endif; ?>
</div>
</div>
<?php if ($is_vip_user) : ?>
<div class="uc-vip-card__benefits">
<span class="uc-vip-card__benefit"><i class="fas fa-download" aria-hidden="true"></i> <?php esc_html_e('免费下载', 'aksrt'); ?></span>
<span class="uc-vip-card__benefit"><i class="fas fa-crown" aria-hidden="true"></i> <?php esc_html_e('专属身份', 'aksrt'); ?></span>
</div>
<?php else : ?>
<div class="uc-vip-card__benefits">
<span class="uc-vip-card__benefit"><i class="fas fa-download" aria-hidden="true"></i> <?php esc_html_e('解锁免费下载', 'aksrt'); ?></span>
<span class="uc-vip-card__benefit"><i class="fas fa-tag" aria-hidden="true"></i> <?php esc_html_e('享专属折扣', 'aksrt'); ?></span>
</div>
<a href="<?php echo esc_url(aksrt_get_user_center_url('credits')); ?>" class="uc-vip-card__btn">
<?php esc_html_e('立即开通', 'aksrt'); ?>
</a>
<?php endif; ?>
</div>
</div>