feat: 可配置站点 URL 风格
- 新增 urlStyle 工具与测试:postPath/userPath/sitePagePath 统一生成链接 - 管理端新增 UrlStylePanel 设置面板,settings 服务与 handler 适配 - 全站路由链接与 JSON-LD/sitemap 切换为统一 URL 生成 - middleware 与相关组件适配
This commit is contained in:
@@ -4590,11 +4590,13 @@ a.j13-mention-token:hover {
|
||||
}
|
||||
#settings-identity .admin-settings-actions,
|
||||
#settings-brand .admin-settings-actions,
|
||||
#settings-url-style .admin-settings-actions,
|
||||
#settings-footer .admin-settings-actions {
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
}
|
||||
#settings-identity .admin-settings-actions-inner,
|
||||
#settings-brand .admin-settings-actions-inner,
|
||||
#settings-url-style .admin-settings-actions-inner,
|
||||
#settings-footer .admin-settings-actions-inner {
|
||||
grid-column: 1;
|
||||
}
|
||||
@@ -4860,6 +4862,71 @@ a.j13-mention-token:hover {
|
||||
}
|
||||
}
|
||||
|
||||
/* 链接风格(伪静态)三选卡 */
|
||||
.admin-url-style-card {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: stretch;
|
||||
padding: 0.8rem 0.85rem;
|
||||
border-radius: 12px;
|
||||
border: 1px solid var(--line);
|
||||
background: var(--panel);
|
||||
text-align: left;
|
||||
cursor: pointer;
|
||||
font: inherit;
|
||||
color: inherit;
|
||||
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
||||
}
|
||||
.admin-url-style-card.is-on {
|
||||
border-color: color-mix(in srgb, var(--accent) 55%, var(--line));
|
||||
box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent);
|
||||
}
|
||||
.admin-url-style-card:focus-visible {
|
||||
outline: 2px solid var(--accent);
|
||||
outline-offset: 1px;
|
||||
}
|
||||
.admin-url-style-dot {
|
||||
width: 0.85rem;
|
||||
height: 0.85rem;
|
||||
border-radius: 999px;
|
||||
border: 1px solid var(--line-2);
|
||||
background: var(--panel-2);
|
||||
flex-shrink: 0;
|
||||
}
|
||||
.admin-url-style-dot.is-on {
|
||||
border-color: var(--accent);
|
||||
background: radial-gradient(circle, var(--accent) 0 42%, transparent 46%);
|
||||
}
|
||||
.admin-url-style-examples {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.25rem;
|
||||
margin-top: 0.6rem;
|
||||
padding: 0.55rem 0.6rem;
|
||||
border-radius: 8px;
|
||||
background: var(--panel-2);
|
||||
}
|
||||
.admin-url-style-example {
|
||||
display: flex;
|
||||
align-items: baseline;
|
||||
justify-content: space-between;
|
||||
gap: 0.6rem;
|
||||
font-size: 11px;
|
||||
}
|
||||
.admin-url-style-example code {
|
||||
font-size: 11px;
|
||||
color: var(--ink-2);
|
||||
overflow-wrap: anywhere;
|
||||
}
|
||||
.admin-url-style-notes {
|
||||
list-style: disc;
|
||||
padding-left: 1.1rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.2rem;
|
||||
color: var(--ink-3);
|
||||
}
|
||||
|
||||
@container settings-page (max-width: 1039px) {
|
||||
.admin-settings-work {
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
|
||||
Reference in New Issue
Block a user