用户实测三处:①照片分组写死 street/landscape 两选不能加——Sveltia select 无 creatable(文档核实),改 string 自由输入;前端筛选同步动态化(分组 从数据反向派生,[a-z0-9-] 命名的分组零配置自动出现筛选片),顺带排查全 后台其余 select:分轨/颜色/字体/来源均为语义契约(写死是安全设计)唯分 组该开放;②速通坞与编辑区抢点击(手机端尤甚)——改默认收起成一枚 26px 圆钮,点开才展开五入口,状态记忆+点外部收起;③翻译无按钮答疑: 英文版走构建链自动机翻(保存中文即出,无按钮是设计),仪表盘有覆盖数。 (同轮收编站长经 CMS 新增的图库照片 夜色金茂湾) 验证: pnpm astro build exit 0;config-check 通过;E2E 65/65(筛选断言适配动态 id);产物断言 f-g-landscape 数据派生 Spec: 2026-11-05_blog-5n-admin-deep-optimization Co-authored-by: GLM-5.3
77 lines
4.4 KiB
HTML
77 lines
4.4 KiB
HTML
<!DOCTYPE html>
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="robots" content="noindex" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>wait4x 后台</title>
|
||
<!-- 站点图标 + PWA(5n B2:手机加主屏独立入口) -->
|
||
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
||
<link rel="manifest" href="./manifest.webmanifest" />
|
||
<style>
|
||
/* 速通坞(5n D1 + 用户实测防误触改版):默认收起成一枚小圆钮,
|
||
点开才展开五入口;开关状态存 localStorage(手机端默认必收起)。
|
||
收起态只有一个 26px 圆钮,不再与编辑区抢点击面。 */
|
||
#qd-toggle{position:fixed;top:10px;right:12px;z-index:9000;width:26px;height:26px;
|
||
border-radius:50%;border:1px solid rgba(127,131,140,.4);background:rgba(255,255,255,.85);
|
||
color:#5b6472;font:14px/1 system-ui,sans-serif;cursor:pointer;opacity:.6;transition:opacity .2s}
|
||
#qd-toggle:hover{opacity:1}
|
||
body[data-qd=open] #qd-toggle{background:rgba(52,84,209,.12);color:#3454d1;border-color:rgba(52,84,209,.4)}
|
||
#qd-links{position:fixed;top:44px;right:12px;z-index:9000;display:none;flex-direction:column;gap:4px;
|
||
font:12px/1 system-ui,sans-serif;padding:6px;border-radius:10px;background:rgba(255,255,255,.95);
|
||
box-shadow:0 2px 10px rgba(0,0,0,.12)}
|
||
body[data-qd=open] #qd-links{display:flex}
|
||
#qd-links a{color:#5b6472;text-decoration:none;padding:5px 10px;border-radius:6px;white-space:nowrap}
|
||
#qd-links a:hover{color:#3454d1;background:rgba(52,84,209,.08)}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<nav id="quick-dock" aria-label="快捷入口">
|
||
<button id="qd-toggle" type="button" aria-expanded="false" title="快捷入口">≡</button>
|
||
<div id="qd-links">
|
||
<a href="https://wait4x.online/artalk/" target="_blank" rel="noopener">评论管理</a>
|
||
<a href="./stats.html" target="_blank" rel="noopener">内容仪表盘</a>
|
||
<a href="https://git.wait4x.online/wait4x/blog" target="_blank" rel="noopener">仓库</a>
|
||
<a href="https://git.wait4x.online/wait4x/blog/src/branch/main/docs/%E5%90%8E%E5%8F%B0%E5%9B%9E%E6%BB%9A%E6%8C%87%E5%BC%95.md" target="_blank" rel="noopener">回滚指引</a>
|
||
<a href="https://git.wait4x.online/wait4x/blog/src/branch/main/docs/%E7%AE%A1%E7%90%86%E5%8F%B0.md" target="_blank" rel="noopener">管理台手册</a>
|
||
</div>
|
||
</nav>
|
||
<script>
|
||
// 速通坞开合:默认收起(误触根除);记住用户选择;点外部自动收起
|
||
(function () {
|
||
var t = document.getElementById('qd-toggle');
|
||
var set = function (open) {
|
||
document.body.dataset.qd = open ? 'open' : 'closed';
|
||
t.setAttribute('aria-expanded', String(open));
|
||
try { localStorage.setItem('qd-open', open ? '1' : '0'); } catch (e) {}
|
||
};
|
||
var saved;
|
||
try { saved = localStorage.getItem('qd-open'); } catch (e) {}
|
||
set(saved === '1'); // 缺省收起
|
||
t.addEventListener('click', function () {
|
||
set(document.body.dataset.qd !== 'open');
|
||
});
|
||
document.addEventListener('click', function (e) {
|
||
if (document.body.dataset.qd === 'open' && !e.target.closest('#quick-dock')) set(false);
|
||
});
|
||
})();
|
||
</script>
|
||
<!-- pinned 本地 bundle(0.259.0,5n T1 升级):官方模板仅此一个 script,无 CSS link、无 type=module -->
|
||
<script src="./sveltia-cms.js"></script>
|
||
<!-- 艺术字体切片(unicode-range 按需取片):选择面板的示例字形用真实字体渲染 -->
|
||
<link rel="stylesheet" href="/fonts/subset/hwmc/fonts.css" />
|
||
<link rel="stylesheet" href="/fonts/xiaowei/fonts.css" />
|
||
<link rel="stylesheet" href="/fonts/huangyou/fonts.css" />
|
||
<link rel="stylesheet" href="/fonts/mashanzheng/fonts.css" />
|
||
<link rel="stylesheet" href="/fonts/liujianmaocao/fonts.css" />
|
||
<link rel="stylesheet" href="/fonts/smiley/fonts.css" />
|
||
<link rel="stylesheet" href="/fonts/neoxihei/fonts.css" />
|
||
<!-- 可视化排版选择:类清单(单一数据源)→ 编辑器组件注册 → 预览样式注入(顺序固定:CMS 之后、init 之前) -->
|
||
<script src="./typography-classes.js"></script>
|
||
<script src="./typography-editor.js"></script>
|
||
<script src="./preview-style.js"></script>
|
||
<!-- 部署状态条(5n B1):轮询 /admin/build-status.json -->
|
||
<script src="./deploy-status.js"></script>
|
||
</body>
|
||
</html>
|