diff --git a/src/AKSRT/Core/WidgetAjax.php b/src/AKSRT/Core/WidgetAjax.php index 82145a25..8e60cbbf 100644 --- a/src/AKSRT/Core/WidgetAjax.php +++ b/src/AKSRT/Core/WidgetAjax.php @@ -204,10 +204,16 @@ class WidgetAjax { if (!class_exists('\AKSRT\Widgets\WidgetForumHotTopics')) { return $this->fail(); } + $style = sanitize_key((string) ($request->get_param('style') ?? 'mini')); + if (!in_array($style, ['mini', 'rank'], true)) { + $style = 'mini'; + } $instance = [ 'count' => max(1, min(20, (int) ($request->get_param('count') ?? 5))), 'period' => sanitize_key((string) ($request->get_param('period') ?? 'week')), 'orderby' => sanitize_key((string) ($request->get_param('orderby') ?? 'views')), + 'style' => $style, + 'plate' => max(0, (int) ($request->get_param('plate') ?? $request->get_param('plate_id') ?? 0)), 'paginate' => sanitize_key((string) ($request->get_param('paginate') ?? 'ajax')), ]; $page = max(1, (int) ($request->get_param('page') ?? 1)); diff --git a/src/AKSRT/Widgets/WidgetForumBoardList.php b/src/AKSRT/Widgets/WidgetForumBoardList.php index c66869fa..369276df 100644 --- a/src/AKSRT/Widgets/WidgetForumBoardList.php +++ b/src/AKSRT/Widgets/WidgetForumBoardList.php @@ -140,7 +140,10 @@ class WidgetForumBoardList extends \WP_Widget { echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped echo $args['before_title'] . esc_html($title) . $args['after_title']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + $rest = rest_url('aksrt/v1/widgets/forum-boards'); + echo '
'; echo $html; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + echo '
'; echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } diff --git a/src/AKSRT/Widgets/WidgetForumTabTopics.php b/src/AKSRT/Widgets/WidgetForumTabTopics.php index f1ef2d76..96adebd1 100644 --- a/src/AKSRT/Widgets/WidgetForumTabTopics.php +++ b/src/AKSRT/Widgets/WidgetForumTabTopics.php @@ -1,6 +1,6 @@ esc_html__('热门/最新/精华等栏目切换的帖子列表(懒加载)。', 'aksrt'), + 'description' => esc_html__('热门/最新/精华等栏目切换的帖子列表(共享迷你行 + 懒加载)。', 'aksrt'), 'classname' => 'widget_aksrt_forum_tab_topics', ] ); @@ -35,8 +35,14 @@ class WidgetForumTabTopics extends \WP_Widget { ]; } $count = max(1, min(20, (int) ($instance['count'] ?? 6))); - $uid = 'aksrt-ftab-' . esc_attr($this->id); - $rest = rest_url('aksrt/v1/forum/frontend/widgets/topics'); + $style = sanitize_key((string) ($instance['style'] ?? 'mini')); + if (!in_array($style, ['mini', 'rank'], true)) { + $style = 'mini'; + } + $plate = max(0, (int) ($instance['plate'] ?? 0)); + $uid = 'aksrt-ftab-' . esc_attr($this->id); + // Prefer WidgetAjax forum-topics (HotTopics payload with style/plate). + $rest = rest_url('aksrt/v1/widgets/forum-topics'); echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped $title = apply_filters('widget_title', (string) ($instance['title'] ?? ''), $instance, $this->id_base); @@ -44,23 +50,25 @@ class WidgetForumTabTopics extends \WP_Widget { echo $args['before_title'] . esc_html($title) . $args['after_title']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } - echo '
'; - echo '