- 文章列表:会员插件注入「付费」徽章列(会员/付费¥xx,停插件即消失) - 分类:真实文章数(withCount)、名称点击跳文章列表并按分类筛选(ListPosts booted 预置筛选) - 分类:新增封面(medialibrary)+ 介绍(description 字段/表单);前台分类页顶部展示介绍区;SEO description + BreadcrumbList 结构化数据(GEO) - 文章编辑:MarkdownEditor 内容区加大(26rem);文章编辑页新增「评论」关系管理页(可审/拒) - 评论列表:文章列带摘要 - 三套主题补 .category-intro 样式 - 测试更新(付费徽章列)
34 lines
1012 B
PHP
34 lines
1012 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Filament\Resources\Posts\Pages;
|
|
|
|
use App\Filament\Resources\Posts\PostResource;
|
|
use Filament\Actions\CreateAction;
|
|
use Filament\Resources\Pages\ListRecords;
|
|
|
|
class ListPosts extends ListRecords
|
|
{
|
|
protected static string $resource = PostResource::class;
|
|
|
|
public function bootedInteractsWithTable(): void
|
|
{
|
|
// 支持从分类管理跳转:?category_id=X 预置分类筛选
|
|
// (在 booted 阶段设置,早于表单填充;SelectFilter 状态为 category_id.value 嵌套结构)
|
|
if (blank($this->tableFilters) && ($categoryId = (int) request()->query('category_id', 0))) {
|
|
$this->tableFilters = ['category_id' => ['value' => $categoryId]];
|
|
$this->tableDeferredFilters = ['category_id' => ['value' => $categoryId]];
|
|
}
|
|
|
|
parent::bootedInteractsWithTable();
|
|
}
|
|
|
|
protected function getHeaderActions(): array
|
|
{
|
|
return [
|
|
CreateAction::make(),
|
|
];
|
|
}
|
|
}
|