{{/* base.html — 共享片段 定义三个 block:hp-head / hp-nav / hp-footer 由各页面模板通过 {{template "hp-xxx" .}} 调用 与旧版的本质区别: - hp-nav 现在渲染真实登录状态({{if .User}}),不再是固定的「未登录」 - 不再有任何与 React 同步的约束 - 登出使用确认对话框(hpConfirm),确认后 fetch POST 登出 */}} {{/* ── 内容 ─────────────────────────────────────────── */}} {{define "hp-head"}} {{.Title}} {{- if .MetaDesc}} {{- end}} {{- if .Title}} {{- end}} {{- if .CanonicalURL}} {{- end}} {{- if .SchemaJSON}}{{schemaScripts .SchemaJSON}}{{- end}} {{- if .HeadExtra}}{{.HeadExtra}}{{- end}} {{end}} {{/* ── 导航栏 ─────────────────────────────────────────────── */}} {{define "hp-nav"}} {{end}} {{/* ── 页脚 ─────────────────────────────────────────────────── */}} {{define "hp-footer"}} {{/* 通用对话框组件(所有页面自动可用)*/}} {{template "hp-dialog"}} {{/* ── 主题切换逻辑 ──────────────────────────────────────── */}} {{end}}