ak
|
f1b9d1e1c3
|
refactor: 外链中转拆为内置插件 neatstudio.link-tracker
- 插件承载全部逻辑:redirects 迁移(hasTable 兼容旧库)、Redirect 模型、UrlRedirector、/go 路由+控制器、Filament 外链中转资源
- 核心只留 hook 接入点:
- tracked_url() 助手走 link.redirect 过滤器(评论正文/作者网址/友链模板统一调用)
- 正文外链改写移到插件的 post.rendered 过滤器(优先级 20,晚于会员付费过滤)
- 停用插件:链接恢复直连、内容不受影响;后台「管理 → 外链中转」查看点击量/启停
- 测试更新为插件上下文(含无过滤器降级断言);97 通过
|
2026-08-13 02:05:32 +08:00 |
|
ak
|
8f1ff6e3f9
|
feat: 外链中转 /go——点击统计 + 拦截 + 隐藏真实链接
- redirects 表 + UrlRedirector:go_url() 站外链接改写为 /go/{hash}(确定性 hash、同 URL 复用、并发安全、缓存)
- /go/{hash} 302 跳转 + 点击计数 + 最后点击时间;停用状态 410(二次拦截);后台「外链中转」资源可查看点击量/启停/删除
- 接入点:正文外链(渲染器统一改写)、评论正文自动链接(comment_body)、评论作者网址、友链(侧边栏+友链页);站内/相对/mailto/tel/锚点不中转
- 测试 6 个(改写/计数/拦截/复用/渲染/评论正文);README 补充
|
2026-08-13 01:28:10 +08:00 |
|
ak
|
5f74dd76e4
|
feat: 文章/分类/评论关联细节完善
- 文章列表:会员插件注入「付费」徽章列(会员/付费¥xx,停插件即消失)
- 分类:真实文章数(withCount)、名称点击跳文章列表并按分类筛选(ListPosts booted 预置筛选)
- 分类:新增封面(medialibrary)+ 介绍(description 字段/表单);前台分类页顶部展示介绍区;SEO description + BreadcrumbList 结构化数据(GEO)
- 文章编辑:MarkdownEditor 内容区加大(26rem);文章编辑页新增「评论」关系管理页(可审/拒)
- 评论列表:文章列带摘要
- 三套主题补 .category-intro 样式
- 测试更新(付费徽章列)
|
2026-08-12 22:44:16 +08:00 |
|
ak
|
d7a9135456
|
fix: 已解锁后 [paid] 标签裸露——替换为付费内容块
post.rendered 过滤原只在无权限时替换 [paid];有权限时原始标签直接显示在页面。现在:
- 有权限:替换为 <div class="paid-content"> 付费内容块(带「付费内容」小标签),三套主题补齐样式
- 先去掉 Markdown 转换产生的 <p>[paid]</p> 包裹,避免替换后残留未闭合标签
- 测试:游客与会员均断言不出现裸 [paid]
|
2026-08-12 17:40:53 +08:00 |
|
ak
|
2089832dc0
|
fix: 主题样式补齐——页头页脚宽度对齐 + 缺失类
- modern:.m-container 由 720px 改为 1080px 与主体对齐(原页头/页脚明显窄于内容);新增 .container 规则;social-links 胶囊样式
- sablog:补 .read-more、.social-links 样式
- demo:补 .container 与 .main-layout max-width,避免内容全宽
|
2026-08-12 17:33:11 +08:00 |
|
ak
|
8fdf8dbb4b
|
docs: 开发规范/教程/demo 全套 + 修复插件运行期自动加载缺口
- demo 插件 plugins/demo.hello-world:演示短代码过滤器、comment.created 钩子、路由+命名空间视图、迁移+模型、后台设置页、filament.post_form 表单注入
- demo 主题 themes/demo:最小可运行主题(覆盖 partials + 绿色系样式)
- 教程 docs/tutorial-plugin.md / docs/tutorial-theme.md(10 分钟上手);规范 docs/development.md(代码/插件/主题/队列/测试/提交)
- README 增加开发者文档导航与上手示例
- 修复关键缺口:插件类原来靠 composer.json 硬编码加载,第三方 ZIP 安装的插件无法加载;现改为启动时扫描 plugins/*/src 运行期注册 PSR-4(register 阶段,保证 Filament 面板解析插件页面前就绪),composer.json 移除硬编码
- 测试:demo 插件 3 个用例 + demo 主题渲染;全量 89 通过
|
2026-08-12 17:26:34 +08:00 |
|
ak
|
8ef250ba80
|
feat: 前台 paywall——整篇锁定渲染付费墙,付费块替换为 teaser
- membership/post.rendered 过滤:整篇锁定(members_only)渲染 paywall 视图(封面+标题+价格+单篇解锁/开通会员按钮,游客引导登录);[paid] 块替换为带解锁按钮的 teaser;替换改用 preg_replace_callback 避免 $ 转义问题
- 视图放 resources/views/membership/(主题同名文件可覆盖),两主题补充 .paywall/.paid-teaser 样式
- 修复泄漏:excerpt_or_fallback 对 members_only 文章不再回退截取正文,防止内容泄漏到 paywall 与 SEO meta
- 测试:更新 teaser 断言,新增 guest 见 paywall、登录用户见解锁/会员按钮
|
2026-08-12 01:02:10 +08:00 |
|
ak
|
56735804a1
|
feat: Markdown 正文自动 TOC(锚点+折叠目录)+ 社交账号扩充国内平台(B站/小红书/抖音/视频号/公众号/其他)+ 侧边栏社交展示 + JSON-LD sameAs 全平台聚合 + 首页 h1(SEO 语义)
|
2026-08-11 23:49:19 +08:00 |
|
ak
|
489a145259
|
feat: 插件/主题管理卡片改用 Filament 原生组件+中文页面标题;注入点分三组管理(页面/侧边栏/文章);前台 sablog 主题全面语义化(header/nav/main/aside/section/footer)
|
2026-08-11 23:43:41 +08:00 |
|
ak
|
d9a6ca2959
|
feat: 注入块拖拽排序(后台顺序即渲染顺序)+ theme.json 声明 inject_points + 主题卡片展示注入点
|
2026-08-11 23:25:34 +08:00 |
|
ak
|
3e3b9a2bfd
|
feat: 主题内容注入点系统(10 个标准位置,同位置多条注入块可排序/启停,stylevar 变量复活)+ 后台主题注入管理页(Tab 分区)+ 缓存/设置收进顶部用户下拉菜单(Livewire action 即时通知)
|
2026-08-11 23:20:57 +08:00 |
|
ak
|
7622cd8e2a
|
feat: 前台整页响应缓存(匿名 GET,浏览量走 track-view 独立端点)+ 后台缓存管理页 + 侧边栏 nav-groups 负 margin 归零
|
2026-08-11 21:53:09 +08:00 |
|
ak
|
b9f02df49f
|
feat: 后台侧边栏紧凑化(13rem + 自定义 CSS)+ 博客设置改 Tab 六分区(站点/外观/订阅SEO/评论/附件/维护),补回时间格式/评论排序/缩略图/水印等 sablog 设置项并接入实际使用
|
2026-08-11 21:30:56 +08:00 |
|
ak
|
6c7562115f
|
feat: 后台全中文(Filament zh_CN 语言包+资源中文label)+ 插件独立导航分组 + 插件/主题管理卡片化 + 主题预览图(无头浏览器生成)+ 两套主题移动端适配
|
2026-08-11 21:18:18 +08:00 |
|
ak
|
d0ae0f60ad
|
fix: modern 主题补全默认视图组件样式(侧边栏 widget/标签云/搜索框/profile/表格/付费提示等),修复切换后错位;header 补搜索框
|
2026-08-11 21:05:32 +08:00 |
|
ak
|
e735967218
|
fix: 登录 Undefined array key(unset 后访问已删 key);sablog 主题 footer 错位(#page 由页面视图自闭合);PaymentSettings Section 类路径(v5 移到 Schemas);modern 主题两栏布局
|
2026-08-11 19:02:53 +08:00 |
|
ak
|
6214976a88
|
M2: 主题系统(sablog经典+modern简约)+ 前台全部页面 + 老 URL 301 兼容 + markdown 双份导入
|
2026-08-11 17:58:29 +08:00 |
|