Replace the video-pic/video/clear button labels with icon-only buttons carrying title + aria-label (设置视频封面/视频/清除), center the glyphs via flex to fix the upward icon shift, rename the media picker title to 为视频设置封面, and drop the unused setVideoCover i18n key. Contract test updated to pin the new markup and string set.
76 lines
3.1 KiB
PHP
76 lines
3.1 KiB
PHP
<?php
|
|
/**
|
|
* Cover featured editor box.
|
|
*
|
|
* @var array $ctx
|
|
* @package AKSRT
|
|
*/
|
|
defined('ABSPATH') || exit;
|
|
|
|
if (empty($ctx['settings']['allow_cover'])) {
|
|
return;
|
|
}
|
|
if (empty($ctx['can_cover_image']) && empty($ctx['can_cover_slide']) && empty($ctx['can_cover_video'])) {
|
|
return;
|
|
}
|
|
|
|
$args = $ctx['featured_args'] ?? [];
|
|
$type = (string) ($args['type'] ?? '');
|
|
$data = $args['data'] ?? [];
|
|
$can_image = !empty($ctx['can_cover_image']);
|
|
$can_slide = !empty($ctx['can_cover_slide']);
|
|
$can_video = !empty($ctx['can_cover_video']);
|
|
?>
|
|
<div class="featured-edit<?php echo $type !== '' ? ' featured-loaded ' . esc_attr($type) : ''; ?>"
|
|
data-featured-args="<?php echo esc_attr(wp_json_encode($args)); ?>">
|
|
<div class="featured-preview" data-featured-preview>
|
|
<?php if ($type === 'image' && !empty($data['url'])) : ?>
|
|
<img src="<?php echo esc_url((string) $data['url']); ?>" alt="">
|
|
<?php elseif ($type === 'slide' && is_array($data) && !empty($data[0]['url'])) : ?>
|
|
<img src="<?php echo esc_url((string) $data[0]['url']); ?>" alt="">
|
|
<span class="featured-type-badge"><i class="fa fas fa-image"></i></span>
|
|
<?php elseif ($type === 'video') : ?>
|
|
<div class="new-dplayer dplayer-scale-height" style="--scale-height:50%;"
|
|
video-url="<?php echo esc_url((string) ($data['url'] ?? '')); ?>"
|
|
video-pic="<?php echo esc_url((string) ($data['pic'] ?? '')); ?>">
|
|
<div class="graphic" style="padding-bottom:50%;">
|
|
<div class="abs-center text-center"><i class="fa fas fa-play-circle fa-4x muted-3-color opacity5" aria-hidden="true"></i></div>
|
|
</div>
|
|
</div>
|
|
<span class="featured-type-badge"><i class="fa fas fa-video"></i></span>
|
|
<?php endif; ?>
|
|
</div>
|
|
<div class="btns-full flex ac jc">
|
|
<?php if ($can_image) : ?>
|
|
<button type="button" class="but btn-image" data-featured-action="image">
|
|
<i class="fa fas fa-image"></i> <?php esc_html_e('图片', 'aksrt'); ?>
|
|
</button>
|
|
<?php endif; ?>
|
|
<?php if ($can_video) : ?>
|
|
<button type="button" class="but btn-video-pic" data-featured-action="video_pic"
|
|
title="<?php esc_attr_e('设置视频封面', 'aksrt'); ?>"
|
|
aria-label="<?php esc_attr_e('设置视频封面', 'aksrt'); ?>">
|
|
<i class="fa fas fa-image"></i>
|
|
</button>
|
|
<?php endif; ?>
|
|
<?php if ($can_slide) : ?>
|
|
<button type="button" class="but btn-slide" data-featured-action="slide">
|
|
<i class="fa fas fa-image"></i> <?php esc_html_e('幻灯片', 'aksrt'); ?>
|
|
</button>
|
|
<?php endif; ?>
|
|
<?php if ($can_video) : ?>
|
|
<button type="button" class="but btn-video" data-featured-action="video"
|
|
title="<?php esc_attr_e('视频', 'aksrt'); ?>"
|
|
aria-label="<?php esc_attr_e('视频', 'aksrt'); ?>">
|
|
<i class="fa fas fa-video"></i>
|
|
</button>
|
|
<?php endif; ?>
|
|
<button type="button" class="but c-red btn-delete" data-featured-action="close" <?php echo $type === '' ? 'hidden' : ''; ?>
|
|
title="<?php esc_attr_e('清除', 'aksrt'); ?>"
|
|
aria-label="<?php esc_attr_e('清除', 'aksrt'); ?>">
|
|
<i class="fa fas fa-trash-alt"></i>
|
|
</button>
|
|
</div>
|
|
<input type="hidden" name="featured_data" value="<?php echo esc_attr(wp_json_encode(['type' => $type, 'data' => $data])); ?>" data-featured-json>
|
|
</div>
|