feat(front-submit): 1:1 写文章/投稿页对齐 zibll newposts
Register AKSRT 写文章/投稿 page template, wire header publish entry to front submit URL, rewrite page-submit as dual-column TinyMCE compose with featured cover, multi-category/topics/filters, pay box, drafts, and capability-gated FrontSubmit AJAX (pay/featured traits).
This commit is contained in:
1 parent
cd4b1a73dc
commit
518e825bdd
25 files changed
+3029
-982
No files matched your search
@@ -0,0 +1,71 @@
|
||||
<?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="aksrt-submit-featured featured-edit"
|
||||
data-featured-args="<?php echo esc_attr(wp_json_encode($args)); ?>"
|
||||
data-can-image="<?php echo $can_image ? '1' : '0'; ?>"
|
||||
data-can-slide="<?php echo $can_slide ? '1' : '0'; ?>"
|
||||
data-can-video="<?php echo $can_video ? '1' : '0'; ?>">
|
||||
<div class="aksrt-submit-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="aksrt-submit-featured__badge"><i class="fas fa-images"></i></span>
|
||||
<?php elseif ($type === 'video') : ?>
|
||||
<?php if (!empty($data['pic'])) : ?>
|
||||
<img src="<?php echo esc_url((string) $data['pic']); ?>" alt="">
|
||||
<?php else : ?>
|
||||
<div class="aksrt-submit-featured__video-placeholder"><i class="fas fa-play"></i></div>
|
||||
<?php endif; ?>
|
||||
<span class="aksrt-submit-featured__badge"><i class="fas fa-video"></i></span>
|
||||
<?php else : ?>
|
||||
<div class="aksrt-submit-featured__empty">
|
||||
<i class="fas fa-image"></i>
|
||||
<span><?php esc_html_e('设置文章封面', 'aksrt'); ?></span>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<div class="aksrt-submit-featured__actions">
|
||||
<?php if ($can_image) : ?>
|
||||
<button type="button" class="but" data-featured-action="image">
|
||||
<i class="fas fa-image"></i> <?php esc_html_e('图片', 'aksrt'); ?>
|
||||
</button>
|
||||
<?php endif; ?>
|
||||
<?php if ($can_slide) : ?>
|
||||
<button type="button" class="but" data-featured-action="slide">
|
||||
<i class="fas fa-images"></i> <?php esc_html_e('幻灯片', 'aksrt'); ?>
|
||||
</button>
|
||||
<?php endif; ?>
|
||||
<?php if ($can_video) : ?>
|
||||
<button type="button" class="but" data-featured-action="video">
|
||||
<i class="fas fa-video"></i> <?php esc_html_e('视频', 'aksrt'); ?>
|
||||
</button>
|
||||
<?php endif; ?>
|
||||
<button type="button" class="but c-red" data-featured-action="close" <?php echo $type === '' ? 'hidden' : ''; ?>>
|
||||
<i class="fas fa-trash"></i> <?php esc_html_e('清除', 'aksrt'); ?>
|
||||
</button>
|
||||
</div>
|
||||
<input type="hidden" name="featured_type" value="<?php echo esc_attr($type); ?>" data-featured-type>
|
||||
<input type="hidden" name="featured_data" value="<?php echo esc_attr(wp_json_encode(['type' => $type, 'data' => $data])); ?>" data-featured-json>
|
||||
</div>
|
||||
Reference in new issue
Block a user