diff --git a/inc/helpers/user-center-renderers/form-contacts.php b/inc/helpers/user-center-renderers/form-contacts.php
new file mode 100644
index 00000000..6fbe0485
--- /dev/null
+++ b/inc/helpers/user-center-renderers/form-contacts.php
@@ -0,0 +1,34 @@
+
+
+ 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;
+ ?>
+
+ 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;
diff --git a/inc/helpers/user-center-renderers/posts-status-filter.php b/inc/helpers/user-center-renderers/posts-status-filter.php
new file mode 100644
index 00000000..6ef1bb93
--- /dev/null
+++ b/inc/helpers/user-center-renderers/posts-status-filter.php
@@ -0,0 +1,40 @@
+ __('已发布', 'aksrt'),
+ 'draft' => __('草稿', 'aksrt'),
+ 'pending' => __('待审', 'aksrt'),
+ 'private' => __('私密', 'aksrt'),
+ 'all' => __('全部', 'aksrt'),
+];
+?>
+
+ $status_text) :
+ $count_for_chip = ('all' === $status_key)
+ ? $post_count
+ : ($user_status_counts[$status_key] ?? 0);
+ if ('publish' !== $status_key && 'all' !== $status_key && $count_for_chip < 1) {
+ continue;
+ }
+ $chip_url = add_query_arg([
+ 'tab' => 'posts',
+ 'post_status' => $status_key,
+ 'posts_page' => 1,
+ ], remove_query_arg(['posts_page']));
+ $chip_active = ($post_status_filter === $status_key);
+ ?>
+
+
+
+
+
+
diff --git a/inc/helpers/user-center-renderers/profile-comments.php b/inc/helpers/user-center-renderers/profile-comments.php
index f2b976b6..3f9b124f 100644
--- a/inc/helpers/user-center-renderers/profile-comments.php
+++ b/inc/helpers/user-center-renderers/profile-comments.php
@@ -10,37 +10,38 @@ defined('ABSPATH') || exit;
$context = is_array($args['context'] ?? null) ? $args['context'] : [];
extract($context, EXTR_SKIP); // phpcs:ignore WordPress.PHP.DontExtract.extract_extract
?>
-
-
-
- $user_id,
- 'number' => $per_page,
- 'offset' => ( $comments_page - 1 ) * $per_page,
- 'status' => 'approve',
- 'update_comment_meta_cache' => false,
- ] );
- if ( $cs ) : ?>
-
-
-
+
+
+ $user_id,
+ 'number' => $per_page,
+ 'offset' => ($comments_page - 1) * $per_page,
+ 'status' => 'approve',
+ 'update_comment_meta_cache' => false,
+ ]);
+ if ($cs) :
+ ?>
+
+
+
diff --git a/inc/helpers/user-center-renderers/profile-favorites.php b/inc/helpers/user-center-renderers/profile-favorites.php
index efc10fe0..dc151d89 100644
--- a/inc/helpers/user-center-renderers/profile-favorites.php
+++ b/inc/helpers/user-center-renderers/profile-favorites.php
@@ -10,56 +10,60 @@ defined('ABSPATH') || exit;
$context = is_array($args['context'] ?? null) ? $args['context'] : [];
extract($context, EXTR_SKIP); // phpcs:ignore WordPress.PHP.DontExtract.extract_extract
?>
-
-
+
+
+ 'post',
+ 'post_status' => 'publish',
+ 'post__in' => $favorite_post_ids,
+ 'orderby' => 'post__in',
+ 'posts_per_page' => $per_page,
+ 'paged' => $favorites_page,
+ 'ignore_sticky_posts' => true,
+ 'no_found_rows' => false,
+ 'update_post_meta_cache' => false,
+ ]);
+ if ($favorites_query->have_posts()) :
+ ?>
+
+ have_posts()) :
+ $favorites_query->the_post();
+ get_template_part('templates/parts/content', 'profile-list-item', [
+ 'action' => [
+ 'type' => 'unfavorite',
+ 'url' => '#',
+ 'label' => __('取消收藏', 'aksrt'),
+ ],
+ ]);
+ endwhile;
+ ?>
+
+ max_num_pages, $favorites_page, 'favorites_page');
+ wp_reset_postdata();
+ else :
+ aksrt_render_profile_empty(
+ $svg_empty_favorite,
+ __('收藏列表为空', 'aksrt'),
+ __('点击文章页面的星标收藏喜欢的内容。', 'aksrt'),
+ home_url('/'),
+ __('去发现好文', 'aksrt')
+ );
+ endif;
+ else :
+ aksrt_render_profile_empty(
+ $svg_empty_favorite,
+ __('收藏列表为空', 'aksrt'),
+ __('点击文章页面的星标收藏喜欢的内容。', 'aksrt'),
+ home_url('/'),
+ __('去发现好文', 'aksrt')
+ );
+ endif;
+ ?>
+
diff --git a/inc/helpers/user-center-renderers/profile-form.php b/inc/helpers/user-center-renderers/profile-form.php
index b49cc8c1..31b0ade3 100644
--- a/inc/helpers/user-center-renderers/profile-form.php
+++ b/inc/helpers/user-center-renderers/profile-form.php
@@ -1,6 +1,6 @@
-
-
+
+
+
+
+
diff --git a/inc/helpers/user-center-renderers/profile-header.php b/inc/helpers/user-center-renderers/profile-header.php
index 34741bb5..38d6b5be 100644
--- a/inc/helpers/user-center-renderers/profile-header.php
+++ b/inc/helpers/user-center-renderers/profile-header.php
@@ -10,70 +10,71 @@ defined('ABSPATH') || exit;
$context = is_array($args['context'] ?? null) ? $args['context'] : [];
extract($context, EXTR_SKIP); // phpcs:ignore WordPress.PHP.DontExtract.extract_extract
?>
-
-