含有章节索引的中文 文章模板
-- limodou [2004-09-03 04:58:02]
Contents
为pyBlosxom增加样式
是pyBlosxom的模板功能,此文档参照 Flavour Templates所写,也可以算作是译文
概述
pyBlosxom有定制样式的能力,它缺省提供了html, rss0.9和rss3的样式。
一个样式包含以下几个文件:
- content_type.flav - 用于返回Content-type值(对于web页面来说,只是"text/html")
- head.flav - 在Blog条目之前的内容
- story.flav - Blog条目显示在这里
foot.flav- 页脚。对于关闭<table>或<div>标记有用
- date_head.flav - 在日期前显示
- date_foot.flav - 在日期后显示
comment*.flav - 查阅评论(comment)的安装
一个样式文件名的后缀可以随便起。不同的后缀用来区分不同的样式。
样式的使用
在pyBlosxom安装后,缺省会在/usr/local/share/pyblosxom-1.0.0/contrib/flavour_examples下安装一些样式。那么你可以将这些样式拷贝到你的blog条目所在的目录。在我的实验中是放在/var/www/html/limodou/entries下。这一点很重要,开始我的样式不起作用就是因为没将样式放在正确的目录。
如果在目录下只有一个样式集,则自动会生效。如果有多个,则可以在config.py中设定一个变量来指定缺省的样式。如:
py['defaultFlavour']='html'
对于多种样式,你还可以在URL上输入: ?flav=样式名 来切换样式。
如果你的Blog还存在分类(分类就是一些子目录),则放在最顶层的数据目录中的样式对所有分类都起作用。如果想在某个分类中使用不同的样式,则只要在那个分类目录下设置新的样式就可以了。注意,新的样式后缀应与上层的样式后缀不同。
样式的修改
对于不满意的样式,你也可以自行修改。
每个样式文件就是一段html代码。其中可以含存一些变量,叫模板变量。模板变量为$开始的一个字符串。这些变量在显示Blog时会提供给模板,然后进行相应的替换后,输出成HTML。这些变量有些是pyblosxom在分析blog记录时自动生成的,有些是从环境中取得的,还有一些可以在config.py中设置。
可以在config.py中设置:
py["renderer"] = "debug"
然后输出页面是就会以Debug的形式输出内容,其中保存了可以使用的所有模板变量。在这里有个示例:PyBlosxom模板变量
一个简单地模板示例
这里模板后缀为basic
content_type.basic
text/html
head.basic
<html> <head> <title>$blog_title</title> </head> <body> <h1><a href="$base_url">$blog_title</a></h1> <h2>$blog_description</h2>
注意,$blog_title, $base_url, $blog_description就是模板变量。这些就是从config.py从得到的。
story.basic
<h5><a href="$base_url/$fn.html">$title</a></h5> $body
foot.basic
</body> </html>
可用的flavour资源
在planetpyblosxom上提供了两个flavour资源: