is函数可以用于判断index/archive/category/tag/date/single/page/post/attachment等,具体用法见下文描述。注意哈,这些页面是有相互包含的关系的,具体在使用过程中要多尝试下。
$this->is('index')
从字面可见,判断当前页面是否是首页。
$this->is('archive')
判断当前页面是否是归档页,譬如主页,分类文章页,标签文章页,日期归档文章页。
$this->is('category'),或者$this->is('category','some_slug')
判断当前页面是否为分类文章页,如果加第二个参数slug,则进一步判断是否为特定的分类,譬如默认分类的slug是“default”。
$this->is('tag')或者$this->is('tag','some_slug')
判断当前页面是否是标签文章页,如果加第二个参数slug,则进一步精确判断,原理同category
$this->is('date')或者$this->is('date','some_range')
用于判断日期,其中some_rage可以是year/month/day判断当前页面是否是日期归档页,如果指定第二个参数,则进一步精确判断。
$this->is('single')
用于判断是否是内容页面,所谓内容页面,包括文章页、独立页面和附件显示页。
$this->is('post')或者$this->is('post',$post_id)
用于判断是否是内容页,加第二个参数则进行精确判断。
$this->is('page')或者$this->is('page','some_slug')
用于判断当前页面是否为独立页面,加第二个参数表示精确判断,譬如$this->is('page','about')则表示判断当前页面是否是about页面。
$this->is('attachment')或者$this->is('attachment',$attachment_id)
同上,用于判断附件页面。
判断登录者身份(typecho定义的五种角色)
五个角色分别为:管理员(administrator), 编辑(editor), 贡献者(contributor), 关注者(subscriber), 访问者(visitor)。
模板里的判断方法
<?php if($this->user->group === 'administrator'): ?> //管理员 <?php endif ?> //其他依次类推...
制作模板的时候有些小伙伴们想在分类的右边填写分类的数量,这个时候就需要获取代码片段。
$this->widget('Widget_Metas_Category_List')->parse('<a href="{permalink}">{name}(count)</a>');
代码说明:
先获取Widget_Metas_Category_List列表类,然后再输出分类的url聚合页索引、类名及数量。大括号内的变量将会被php代码解析替代成具体的值然后输出。
此parse解析会生成一个li包含a标签的内容,parse函数里面的内容可以自由定制。
评论已关闭