Widget_Archive开发文档

如果需要更加原理性的讲解,请移步到[《Typecho中Widget_Archive详解》][1],本文主要列举并介绍Widget_Archive的API用法。
Widget_Archive是用于加载皮肤文件的主要入口,包括加载index.php/search.php/page.php/category.php等。

### 成员属性
包括Widget_Archive本身的成员变量或者从父类继承的成员变量。

#### $this->options
Widget_Options的一个实例,详细手册请参考[《Typecho中的Widget_Options》][2]
Widget_Options的基本用法:

$this->options->index();//输出当前网站的index页面url
$this->options->index(‘/category/slug/’);输出/index.php/category/slug/
$this->options->themeUrl(‘/img/logo.png’);输出当前主题的资源地址,譬如/usr/themes/MyTheme/img/logo.png

### $this->db;
Typecho_DB的一个实例,用于访问当前的DB资源,详细请参考[《Typecho中的数据库API》][3]

### $this->user;
Widget_User的一个实例,用于访问当前用户的信息,详细请参考[《Typecho中的Widget_User手册》][4]

### $this->request;
Typecho_Request的一个实例,详细参考[《Typecho中的Typezho_Request手册》][5]

### $this->request;
Typecho_Response的一个实例,详细参考[《Typecho中的Typecho_Response手册》][5]

### 栈属性
如果在列表页面中,譬如index.php或者category.php,则通过$this->next()函数来迭代,如果在文章页面譬如post.php中,则可以直接访问。

譬如,在category.php页面中:

while($this->next()){
$this->title();
}

在post页面中,则可以直接输出title:

$this->title();

**常用字段:**
– allowComment,String类型,1或者0
– allowFeed,String类型,1或者0
– allowPing,String类型,1或者0
– category,String类型,文章所在分类的slug值,譬如`default`
– cid,String类型,文章的ID
– commentsNum,String类型,该文章的评论数
– permalink,String类型,文章的有效链接
– slug,String类型,文章的slug
– text,String类型,文章的内容
– title,String类型,文章的标题
– type,String类型,文章的类型,譬如post/page等
– authorId,String类型,作者ID

**时间类字段:**
– created,String类型,该文章的创建时间,时间戳形式,譬如1431954420
– modified,String类型,文章的修改时间,时间戳形式
– day,String类型,文章创建的日期,譬如’25’
– month,String类型,文章的创建月份,譬如05
– year,String,文章创建时间的年份信息,譬如`2015`
– date,Typecho_Date类型,文章的创建时间

**分类信息:**
– categories,Array类型,每个数组元素均是一个分类信息,譬如:

array (size=14)
‘mid’ => string ‘1’ (length=1)
‘name’ => string ‘默认分类’ (length=12)
‘slug’ => string ‘default’ (length=7)
‘type’ => string ‘category’ (length=8)
‘description’ => string ‘只是一个默认分类’ (length=24)
‘count’ => string ‘2’ (length=1)
‘order’ => string ‘1’ (length=1)
‘parent’ => string ‘0’ (length=1)
‘cid’ => string ‘3’ (length=1)
‘directory’ =>
array (size=1)

‘permalink’ => string ‘http://www.typechodev.com/index.php/category/default/’ (length=45)
‘feedUrl’ => string ‘http://www.typechodev.com/index.php/feed/category/default/’ (length=50)
‘feedRssUrl’ => string ‘http://www.typechodev.com/index.php/feed/rss/category/default/’ (length=54)
‘feedAtomUrl’ => string ‘http://www.typechodev.com/index.php/feed/atom/category/default/’ (length=55)

– directory,Array类型,表示文章所在的分类结构,譬如:

array (size=3)
0 => string ‘default’ (length=7)
1 => string ‘dev’ (length=3)
2 => string ‘debug’ (length=5)

**其他字段:**
– feedAtomUrl,String类型,譬如:’http://www.typechodev.com/index.php/feed/atom/archives/3/’
– feedRssUrl,String类型,譬如:’http://www.typechodev.com/index.php/feed/rss/archives/3/’
– feedUrl,String类型,譬如:’http://www.typechodev.com/index.php/feed/archives/3/’
– hidden,Boolean类型,文章是否隐藏
– isMarkdown,Boolean类型,文章是否Markdown格式
– order,String类型,文章的序号
– parent,String类型,此条记录的所属。譬如在附件中,parent会记录此附件的所属文章
– password,String类型,文章的查看密码
– pathinfo,String类型,譬如’/archives/3/’
– status,String类型,文章的状态,譬如publish
– template,String类型,文章的模板,譬如在page中可以指定自定义模板

>注意:以上属性,类型是String的,均使用如下规则:
$this->title,表示获取值,譬如`$title = $this->title;echo $title;`
$this->title(),表示直接输出,等效于上面的语句。

### 成员函数

– $this->theNext(),输出下一篇文章的链接,含标题等信息

– $this->thePrev(),输出上一篇文章的链接,含标题
//TODO,其他待补充。

[1]: http://www.typechodev.com/index.php/archives/25/
[2]: http://www.typechodev.com/index.php/archives/44/
[3]: http://www.typechodev.com/index.php/archives/17/
[4]: http://www.typechodev.com/index.php/archives/513/
[5]: http://www.typechodev.com/index.php/archives/514/
[6]: http://www.typechodev.com/index.php/archives/515/

原创文章,作者:admin,如若转载,请注明出处:https://www.typechodev.com/dev/499.html

(0)
上一篇 2015-06-30 上午7:16
下一篇 2015-06-30 上午7:32

相关推荐

发表评论

您的电子邮箱地址不会被公开。