feat: 可配置站点 URL 风格
- 新增 urlStyle 工具与测试:postPath/userPath/sitePagePath 统一生成链接 - 管理端新增 UrlStylePanel 设置面板,settings 服务与 handler 适配 - 全站路由链接与 JSON-LD/sitemap 切换为统一 URL 生成 - middleware 与相关组件适配
This commit is contained in:
@@ -2,10 +2,12 @@ import Link from "next/link";
|
||||
import { ChevronRight } from "lucide-react";
|
||||
import type { SidebarPageItem } from "@/lib/api";
|
||||
import { pageGlyph } from "@/lib/pageGlyph";
|
||||
import { getPublicSettingsCached } from "@/lib/serverData";
|
||||
import { pagePath } from "@/lib/urlStyle";
|
||||
import AboutSiteHeader from "./AboutSiteHeader";
|
||||
|
||||
/** 侧栏单页兄弟目录(高亮当前 slug);标题栏与首页「关于本站」一致 */
|
||||
export default function SiteDocPageNav({
|
||||
export default async function SiteDocPageNav({
|
||||
pages,
|
||||
currentSlug,
|
||||
title = "文档目录",
|
||||
@@ -17,6 +19,7 @@ export default function SiteDocPageNav({
|
||||
canManage?: boolean;
|
||||
}) {
|
||||
if (pages.length === 0 && !canManage) return null;
|
||||
const urlStyle = (await getPublicSettingsCached()).url_style;
|
||||
|
||||
return (
|
||||
<section className="j13-module j13-about flex min-h-0 flex-col" aria-label={title}>
|
||||
@@ -31,7 +34,7 @@ export default function SiteDocPageNav({
|
||||
return (
|
||||
<li key={p.id}>
|
||||
<Link
|
||||
href={`/p/${p.slug}`}
|
||||
href={pagePath(urlStyle, p.slug)}
|
||||
className="j13-about-item"
|
||||
aria-current={current ? "page" : undefined}
|
||||
style={
|
||||
|
||||
Reference in New Issue
Block a user