Hexo主题实现多级分类显示
2016-01-25 10:07
246 查看
前言
最近在搞一个博客,是托管在github和gitcafe上的,利用Hexo生成的。之后,发现一个问题,显示的分类都是一级的。而我想要的是:能显示
多级分类,层次分明`的那样。
问题
基本主题自带的分类显示都是一级的,如何显示多级?
解决方案
所以,研究了一下,找到了理想的方法,方法如下:利用系统的list_categories([categories], [options])辅助函数生成分类列表;
利用css实现样式.
示例
说明:我使用的是jacman主题,以这个主题为例说明。在主题文件夹下找到
layout/_widget/category.ejs文件,内容如下:
<% if (site.categories.length){ %> <div class="categorieslist"> <p class="asidetitle"><%= __('categories') %></p> <ul> <% site.categories.sort('name').each(function(item){ %> <% if(item.posts.length){ %> <li><a href="<%- config.root %><%- item.path %>" title="<%= item.name %>"><%= item.name %><sup><%= item.posts.length %></sup></a></li> <% } %> <% }); %> </ul> </div> <% } %>
修改内容,利用上面提到的
list_categories([categories], [options])辅助函数:
<% if (site.categories.length){ %> <div class="category-block"> <h3 class="asidetitle"><%= __('categories') %></h3> <%- list_categories(site.categories) %> </div> <% } %>
修改样式文件
在主题文件夹下找到
source/css/_partial/aside.styl文件,其他的也可能是
source/css/_partial/sidebar.styl。反正,能在页面显示即可。
添加新的样式,我的如下:
//categories .category-block>ul>li border-bottom 1px solid #ccc .category-block li margin-bottom 8px .category-list @media mini width 45% float left margin 0 5% 0 0 @media tablet width 100% float none margin .5em 0 0 .categoriy-list-item padding .5em 5% .category-list-count top -.5em padding-left .3em font-size 75% line-height 0 position relative vertical-align baseline ul, ol, dl list-style none ul, ol, dl background-color #f9f9fa margin-left 20px li border-bottom 1px dashed #ccc .category-list-child border-top 1px dashed #ccc margin-bottom 8px
想实现不同的样式,自己可以修改。
效果图
原文来自:http://git.seay.me
相关文章推荐
- PHP扩展开发(4) - 多类扩展
- 网络爬虫基本原理
- MFC Split(字符串截取)函数的实现
- nyoj5
- 如何搭建千万级别用户的应用系统
- 《精通CSS:高级Web标准解决方案》学习笔记(下)
- [C#]List的Sort()、Find()、FindAll()、Exist()的使用方法举例
- 制作根文件系统
- if __name__ == '__main__'
- 查看apk的签名信息
- LinuxThreads 和 NPTL
- ios tableView那些事 (六) 如何处理tableView上的文字
- Compatibility Testing
- Quartz.NET笔记(二) Jobs And Triggers
- Majority Element
- maven解决life cycle问题
- 博客生活开始
- Container容器技术大会PPT分享
- Android6.0 storage目录sd卡存储的路径创建
- Windows Builder(图形化界面的利器)For Eclipse 3.7