Hexo+Next指定文章隐藏侧栏
2018年6月4日 · 569 字 · 2 分钟 · #好玩系列
坑里呆了3小时
缘由
近期在幕布的活动比较多,想新增一个幕布的作品集页面,所以就依葫芦画瓢,新建一个幕布作品集的页面。
hexo new page "mubu"
中间省略其余相关步骤。
提交至线上发现右边我设置的隐藏栏就自动弹出来了,好奇的是为什么分类、标签等不自动弹出来呢?
第一步
各种Google找资料,next主题的官网等都没找到解决办法,最好慢慢在妥协,要不全部都不显示了?
作为一个追求相对完美的人,肯定不愿意放弃!
第二步
找原因。
为什么不行呢?为什么会显示呢?查看next主题的配置文件。其中 display: post
,这句话的意思只有文章才自动显示。所以我的幕布作品集被当作了文章处理。
sidebar:
# Sidebar Position, available value: left | right (only for Pisces | Gemini).
#position: left
position: right
# Sidebar Display, available value (only for Muse | Mist):
# - post expand on posts automatically. Default.
# - always expand for all pages automatically
# - hide expand only when click on the sidebar toggle icon.
# - remove Totally remove sidebar including sidebar toggle.
display: post
#display: always
#display: hide
#display: remove
# Sidebar offset from top menubar in pixels (only for Pisces | Gemini).
offset: 12
# Back to top in sidebar (only for Pisces | Gemini).
b2t: false
# Scroll percent label in b2t button.
scrollpercent: true
# Enable sidebar on narrow view (only for Muse | Mist).
onmobile: false
继续探寻,最后在issues/943找到了解决办法的初步思路。
第三步
根据issues-943找到了my-project/themes/next/layout/_marcro/sidebar.swig
中找到下一列信息。
{% set display_toc = is_post and theme.toc.enable or is_page and theme.toc.enable %}
将其修改为:
{% set display_toc = is_post and theme.toc.enable and !page.no_toc or is_page and theme.toc.enable and !page.no_toc %}
然后只需要在你不想显示目录的文章头部加一行:no_toc: true
即可。
作者:DemoChen
链接:https://demochen.com/posts/24546/
声明:除非另有声明,本文均采用 CC BY-NC-ND 4.0
协议,转载请注明
赞助:若你觉得本文对你有启发,非常欢迎你成为我的 Sponsor ,感恩遇见