自动目录两份默认状态分别设置,老配置平滑迁移 #27
正文那份与浮层那份的「默认状态」拆成两项,各管各的: - theme-toc.php:toc_default 拆成 inline_default / float_default; normalize 加四分支迁移段(新键合法→用它;新键非法→回落该键默认; 新键缺失 + 老键存在→用老键;都不存在→各键默认); 读库键列表继续读老键 'default',不读就拿不到迁移值,老站点会被静默重置; 正文的 open 与浮层的 is_open 各读自己的键,互不引用。 - theme-options.php:两个独立下拉分别落在「正文里的目录」「浮动目录」 分组末尾;共用分组里那句「对两份同时生效」已过时,改写。 - 新增 yang_toc_admin_legacy_values() 挂 option_kratos(仅 is_admin): 后台读配置时把老键的值内存投影到缺失的新键上。不投影的话, 老站点会出现「页面按 hide 渲染、后台下拉框却显示 show」的错位。 只在读取时投影,库不动,降级回旧版仍有退路。 - style.css 版本号 3.2.59(本版未改前台 CSS,kratos.min.css 与 JS 均未动)。 验证:桩判据 61/0,反证 16 组 36/0,真实 WP 判据 30/0, 回归 _toc330_logic 101/0、_test_toc 53/0,打包自检 42/0。
This commit is contained in:
+27
-13
@@ -520,9 +520,23 @@ function kratos_options()
|
||||
),
|
||||
);
|
||||
|
||||
/* 3.2.59:从「共用」分组搬到这里。它只作用于正文那份,
|
||||
摆在「正文里的目录」分组下才不会让人以为它也管浮层。 */
|
||||
$options[] = array(
|
||||
'name' => __('正文目录的默认状态', 'kratos'),
|
||||
'desc' => __('<b>默认显示</b>:进来就能看到全部条目。<b>默认隐藏</b>:先只露出标题栏,读者自己点开。<b>较长或标题很多的文章建议默认隐藏</b>,否则目录会占掉一屏。<br>这一项<b>只管正文里那一份</b>;浮动目录的默认状态在下面「浮动目录」分组里单独设,<b>两者互不影响</b>。<br>注:这里只管「默认长什么样」,读者点开后仍然可以正常使用;正文里手写的 <b>[TOC]</b> 还能用 <b>open="0"</b> 单独指定,且只影响正文这份。', 'kratos'),
|
||||
'id' => 'toc_inline_default',
|
||||
'std' => 'show',
|
||||
'type' => 'select',
|
||||
'options' => array(
|
||||
'show' => __('默认显示', 'kratos'),
|
||||
'hide' => __('默认隐藏', 'kratos'),
|
||||
),
|
||||
);
|
||||
|
||||
$options[] = array(
|
||||
'name' => __('浮动目录', 'kratos'),
|
||||
'desc' => __('下面两项只影响<b>浮在页面边上</b>那一份 —— 它不占正文位置,和正文里的目录互不相干。', 'kratos'),
|
||||
'desc' => __('下面几项只影响<b>浮在页面边上</b>那一份 —— 它不占正文位置,和正文里的目录互不相干。', 'kratos'),
|
||||
'id' => 'toc_group_float',
|
||||
'type' => 'info',
|
||||
);
|
||||
@@ -548,24 +562,24 @@ function kratos_options()
|
||||
);
|
||||
|
||||
$options[] = array(
|
||||
'name' => __('两份目录共用的设置', 'kratos'),
|
||||
'desc' => __('下面几项对正文里和浮动的那一份<b>同时生效</b>。', 'kratos'),
|
||||
'id' => 'toc_group_common',
|
||||
'type' => 'info',
|
||||
);
|
||||
|
||||
$options[] = array(
|
||||
'name' => __('默认状态', 'kratos'),
|
||||
'desc' => __('<b>默认显示</b>:进来就能看到全部条目。<b>默认隐藏</b>:先只露出标题栏(或侧边的标签),读者自己点开。<b>较长或标题很多的文章建议默认隐藏</b>,否则目录会占掉一屏。<br>注:这里只管「默认长什么样」,读者点开后仍然可以正常使用;正文里手写的 <b>[TOC]</b> 也可以用 <b>open="0"</b> 单独指定。', 'kratos'),
|
||||
'id' => 'toc_default',
|
||||
'name' => __('浮层目录的默认状态', 'kratos'),
|
||||
'desc' => __('<b>默认显示</b>:一进文章,面板就已经滑出展开。<b>默认隐藏</b>:只留边上那片竖向小标签,读者点一下才滑出 —— <b>长文建议用这个</b>,不然面板会一直挡着正文。<br>这一项<b>只管浮动那一份</b>,和正文目录的默认状态<b>各设各的</b>:想让正文展开、浮层收起,就这里选「默认隐藏」、上面选「默认显示」。<br>注:展开态直接写在页面 HTML 的 class 上,<b>浏览器禁用 JS 也能看到正确的默认状态</b>。', 'kratos'),
|
||||
'id' => 'toc_float_default',
|
||||
'std' => 'show',
|
||||
'type' => 'select',
|
||||
'options' => array(
|
||||
'show' => __('默认显示', 'kratos'),
|
||||
'hide' => __('默认隐藏', 'kratos'),
|
||||
'show' => __('默认显示(面板展开)', 'kratos'),
|
||||
'hide' => __('默认隐藏(只留侧边标签)', 'kratos'),
|
||||
),
|
||||
);
|
||||
|
||||
$options[] = array(
|
||||
'name' => __('两份目录共用的设置', 'kratos'),
|
||||
'desc' => __('下面几项对正文里和浮动的那一份<b>同时生效</b> —— 它们的标题文字、收录哪些级别、要不要加序号,两份保持一致。<br><b>「默认状态」不在这里了</b>:正文那份和浮层那份现在各自单独设(见上面两个分组),因为「正文展开、浮层收起」是很常见的搭配。', 'kratos'),
|
||||
'id' => 'toc_group_common',
|
||||
'type' => 'info',
|
||||
);
|
||||
|
||||
$options[] = array(
|
||||
'name' => __('目录标题', 'kratos'),
|
||||
'desc' => __('显示在目录顶部的那行字。留空则用「目录」。', 'kratos'),
|
||||
|
||||
Reference in New Issue
Block a user