用户中心 posts/sidebar/form 渲染器整包拆分并清理标记
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
<?php
|
||||
/**
|
||||
* User center posts: list + pagination.
|
||||
*
|
||||
* Expects extracted $context vars.
|
||||
*
|
||||
* @package AKSRT
|
||||
*/
|
||||
|
||||
defined('ABSPATH') || exit;
|
||||
|
||||
$ps_args = [
|
||||
'author' => $user_id,
|
||||
'post_status' => ('all' === $post_status_filter)
|
||||
? ['publish', 'draft', 'pending', 'private']
|
||||
: $post_status_filter,
|
||||
'posts_per_page' => $per_page,
|
||||
'paged' => $posts_page,
|
||||
'no_found_rows' => false,
|
||||
'update_post_meta_cache' => false,
|
||||
'update_post_term_cache' => true,
|
||||
];
|
||||
$q = new WP_Query($ps_args);
|
||||
if ($q->have_posts()) :
|
||||
?>
|
||||
<div class="profile-list">
|
||||
<?php
|
||||
while ($q->have_posts()) :
|
||||
$q->the_post();
|
||||
$st = get_post_status();
|
||||
$status_label = '';
|
||||
if ('publish' !== $st) {
|
||||
$st_map = [
|
||||
'draft' => __('草稿', 'aksrt'),
|
||||
'pending' => __('待审', 'aksrt'),
|
||||
'private' => __('私密', 'aksrt'),
|
||||
'future' => __('定时', 'aksrt'),
|
||||
];
|
||||
$status_label = $st_map[$st] ?? $st;
|
||||
}
|
||||
$edit_link = get_edit_post_link();
|
||||
get_template_part('templates/parts/content', 'profile-list-item', [
|
||||
'action' => $edit_link ? ['type' => 'edit', 'url' => $edit_link, 'label' => __('编辑', 'aksrt')] : [],
|
||||
'status' => $status_label,
|
||||
]);
|
||||
endwhile;
|
||||
?>
|
||||
</div>
|
||||
<?php
|
||||
aksrt_render_profile_pagination((int) $q->max_num_pages, $posts_page, 'posts_page');
|
||||
wp_reset_postdata();
|
||||
else :
|
||||
aksrt_render_profile_empty(
|
||||
$svg_empty_post,
|
||||
__('还没有文章', 'aksrt'),
|
||||
__('试试发布你的第一篇文章吧。', 'aksrt'),
|
||||
admin_url('post-new.php'),
|
||||
__('写文章', 'aksrt')
|
||||
);
|
||||
endif;
|
||||
Reference in New Issue
Block a user