数据类型及字段 - lizheming/PMBlog GitHub Wiki
变量名 | 描述 |
---|---|
site.title | 网站的标题 |
site.url | 网站的域名,字符型 |
site.config | 网站的自定义属性 |
site.config.template | 网站主题 |
site.config.dataformat | 网站默认输出时间的格式 |
site.config.doc | 网站日志文件存放位置 |
site.config.html | 网站生成的静态HTML文件存放位置 |
site.config.post_per_page | 网站每页显示多少文章 |
site.pages | 所有的页面的清单 |
site.posts | 一个按照时间倒叙的所有文章的清单 |
site.tags.TAG | 所有在TAG 标签下的文章 |
site.categories.CATEGORY | 所有在CATEGORY 标签下的文章 |
Menu的数据类型为数组,下面用[0]代表子元素。
变量名 | 描述 |
---|---|
menu[0].title | 菜单第一个的标题 |
menu[0].url | 菜单第一个的网址 |
menu[0].description | 菜单第一个的描述 |
Link的数据类型为数组,下面用[0]代表子元素。
变量名 | 描述 |
---|---|
link[0].title | 友情链接第一个的标题 |
link[0].url | 友情链接第一个的网址 |
link[0].description | 友情链接第一个的描述 |
变量名 | 描述 |
---|---|
post.title | 文章的标题 |
post.date | 文章的发表时间 |
post.url | 文章的URL |
post.type | 文章的类型 |
post.filename | 文章的文件名 |
post.filepath | 文章去除site.url之后的相对路径 |
post.content | 文章正文 |
post.opening | 以<!--more-->分割post.content,并提取前半部分 |
post.read_more | 如果post.opening已是全文,则为false;反之为true |
post.cover | 文章封面图片的url地址,取正文内的第一张插图,若无则为None |
post.template | 文章模板 |
post.tags | 文章标签 |
post.categories | 文章分类 |
post.prev | 上一篇文章的相关信息 |
post.prev.title | 上一篇文章的标题 |
post.prev.url | 上一篇文章的地址 |
post.next | 下一篇文章的相关信息 |
post.next.title | 下一篇文章的标题 |
post.next.url | 下一篇文章的地址 |
post.custom | 文章的自定义变量(在文章用以custom-变量名:变量值 实现) |
TagCloud的数据类型为数组,下面用[0]代表子元素。
变量名 | 描述 |
---|---|
TagCloud[0].title | 标签的名称 |
TagCloud[0].url | 标签对应的网址 |
TagCloud[0].length | 标签对应的文章数 |
CategoryCloud的数据类型为数组,下面用[0]代表子元素。
变量名 | 描述 |
---|---|
CategoryCloud[0].title | 分类的名称 |
CategoryCloud[0].url | 分类对应的网址 |
CategoryCloud[0].length | 分类对应的文章数 |
Paginator输出当前页面的页码信息
变量名 | 描述 |
---|---|
paginator.per_page | 每页数量 |
paginator.object_list | 当前页的文章,不常用 |
paginator.total_pages | 总共多少页 |
paginator.page | 当前是第几页 |
paginator.page_url | 当前页的url地址 |
paginator.previous_page | 上一页页码 |
paginator.pre_page | 同previous_page |
paginator.previous_page_url | 上一页的url |
paginator.pre_page_url | 同previous_page_url |
paginator.next_page | 下一页页码 |
paginator.next_page_url | 下一页的url |
paginator.has_next | 是否有下一页 True/False |
paginator.has_previous | 是否有上一页 True/False |
paginator.has_pre | 同has_previous |
paginator.prefix_url | 页面的url前缀,导航页的为http://abc.com/,标签页的为http://abc.com/tag/tagname,分类页的为http://abc.com/category/categoryname |
###代码示例
一个比较常见的,对paginator处理的代码就是上下页导航:
<div class="page-navigator">
{% if paginator.has_previous %}
<a class="round pre" id="pre" href="{{paginator.previous_page_url}}">{{paginator.previous_page}}</a>
{% endif %}
{% if paginator.has_next %}
<a class="round next" id="next" href="{{paginator.next_page_url}}">{{paginator.next_page}}</a>
{% endif %}
</div>
另外一种比较常见的就是显示页码数字导航:
<nav role="pagination" class="pager">
<ul>
{% set total = paginator.total_pages %}
{% set current = paginator.page %}
{% set current_url = paginator.page_url %}
{% if paginator.has_pre %}
<li><a href="{{paginator.prefix_url}}/index.html">First</a></li>
<li><a href="{{paginator.pre_page_url}}">Previous</a></li>
{% if current < 6 %}
{% for page in 1..(current-1) %}
<li><a href="{{paginator.prefix_url}}/page/{{page}}">{{page}}</a></li>
{% endfor %}
{% else %}
<li><a href="index.html">1</a></li>
<li>...</li>
{% for page in (current-3)..(current-1) %}
<li><a href="{{paginator.prefix_url}}/page/{{page}}">{{page}}</a></li>
{% endfor %}
{% endif %}
{% endif %}
<li class="current"><a href="{{current_url}}">{{current}}</a></li>
{% if paginator.has_next %}
{% if current > (total - 5) %}
{% for page in (current+1)..total %}
<li><a href="{{paginator.prefix_url}}/page/{{page}}">{{page}}</a></li>
{% endfor %}
{% else %}
{% for page in (current+1)..(current+3) %}
<li><a href="{{paginator.prefix_url}}/page/{{page}}">{{page}}</a></li>
{% endfor %}
<li>...</li>
<li><a href="{{paginator.prefix_url}}/page/{{total}}">{{total}}</a></li>
{% endif %}
<li><a href="{{paginator.next_page_url}}">Next</a></li>
<li><a href="{{paginator.prefix_url}}/page/{{total}}">Last</a></li>
{% endif %}
</ul>
</nav>