|
@@ -44,11 +44,26 @@ class ProductController extends Controller
|
|
|
->orderBy('is_pinned', 'desc') // 按 is_pinned 降序排序
|
|
|
->paginate(12);
|
|
|
|
|
|
+ // 创建分页数据结构
|
|
|
+ $paginator = [
|
|
|
+ 'previous_page' => $products->previousPageUrl() ? true : false, // 是否有上一页
|
|
|
+ 'previous_page_url' => $products->previousPageUrl(), // 上一页的 URL
|
|
|
+ 'next_page' => $products->nextPageUrl() ? true : false, // 是否有下一页
|
|
|
+ 'next_page_url' => $products->nextPageUrl(), // 下一页的 URL
|
|
|
+ 'current_page' => $products->currentPage(), // 当前页
|
|
|
+ 'total_pages' => $products->lastPage(), // 总页数
|
|
|
+ 'pages' => range(1, $products->lastPage()), // 页码数组
|
|
|
+ 'page_url' => array_combine(
|
|
|
+ range(1, $products->lastPage()),
|
|
|
+ array_map(fn($page) => $products->url($page), range(1, $products->lastPage()))
|
|
|
+ ), // 每页的 URL
|
|
|
+ ];
|
|
|
|
|
|
// 渲染模板并传递数据
|
|
|
return $this->liquidRenderer->render('products_categories.liquid', [
|
|
|
'category' => $category, // 分类名称
|
|
|
'products' => $products, // 分类下的产品
|
|
|
+ 'paginator' => $paginator, // 分页信息
|
|
|
]);
|
|
|
|
|
|
}
|