使用WordPress条件判断标签,可以为特定页面加载不同的模板,灵活运用WordPress条件判断标签可以制作出WordPress图片列表、专题页面、不一样的文章页面等。通常我使用这些条件标签来为不同页面输出不同的关键词标签(Keywords)、描述标签(Description)内容。
WordPress条件判断标签详细列表
主页
is_home()
主页,当前页面为主页时返回True,只有“阅读”设置中的首页显示设置为“最新文章”才返回True
首页
is_front_page()
首页,不管“阅读”设置中的首页显示设置为何值,都返回True。需要注意的是,当首页显示设置为一个静态页面时,你的站点首页加载的是page.php页面模板。
管理员面板
is_admin()
后台,只有处于网站后台时才返回True,通常用于插件开发,因为主题模板总是在前台加载的。
文章页面
is_single()
判断是否为文章页面
is_single('18')
ID为18的文章页面
is_single('New Post')
标题为“New Post”的文章页面
is_single('new-post')
别名为“new-post”的文章页面
is_single(array(18,'new-post,'New Post'))
文章ID为18或别名为“new-post”或标题为“New Post”都返回True,也就是只要满足其中一个条件就返回True
文章置顶
is_sticky()
判断当前文章是否置顶,必须用在主循环(Loop)中
is_sticky('18')
判断ID为18的文章是否置顶
评论
is_comments_popup()
判断是否为弹出式评论
comments_open()
判断是否允许评论,必须用在主循环中
pings_open()
判断文章 ping 功能是否开启,必须用在主循环中
Page页面
is_page()
判断是否为页面
is_page('8')
ID为8的页面
is_page('About Me')
标题为“About Me”的页面
is_page('about-me')
别名为“about-me”的页面
is_page(array(8,'about-me','About Me'))
页面ID为8或别名为“about-me”或标题为“About Me”都返回True,也就是只要满足其中一个条件就返回True
自定义页面模版
is_page_template()
是否自定义页面模板
is_page_template('links.php')
是否自定义页面模板links.php
分类页面
is_category()
判断是否为分类页面
is_category('9')
ID为9的分类页面
is_category('WordPress模板标签')
名称为“WordPress模板标签”的分类页面
is_category('wordpress-template-tags')
别名为“wordpress-template-tags”的分类页面
is_category(array(9,'wordpress-template-tags','WordPress模板标签'))
分类ID为9或别名为“wordpress-template-tags”或名称为“WordPress模板标签”都返回True,也就是只要满足其中一个条件就返回True
in_category('6')
如果当前文章在ID为6的分类中,就返回True
标签页面
is_tag()
判断是否为标签页面
is_tag('wordpress-template-tags')
别名为“wordpress-template-tags”的标签页面
is_tag(array('wordpress-template-tags','html','css'))
如果当前标签页面的别名是“wordpress-template-tags”或“html”或“css”都返回True
has_tag()
判断当前文章是否有标签,必须用在主循环中。
has_tag('wordpress-template-tags')
判断当前文章是否有一个标签“wordpress-template-tags”
has_tag(array('wordpress-template-tags','html','css'))
作者页面
is_author()
判断是否作者页面
is_author('2')
ID为2的作者页面
is_author('Jack')
昵称为“Jack”的作者页面,也可以使用姓名作为参数
is_author(array(2,'john-jones','Jack'))
ID为2或昵称为“Jack”或姓名为“john-jones”都会返回True
日期页面
is_date()
判断是否日期归档页面
is_year()
判断当前页面是否为按年份存档的页面
is_month()
判断当前页面是否为按月份存档的页面
is_day()
判断当前页面是否为按日期存档的页面
is_time()
判断当前页面是否为按照小时、分钟、秒存档的页面
存档页面
is_archive()
判断是否存档页面,包括分类、标签、作者页面、日期存档页面等
搜索结果页面
is_search()
判断是否搜索结果页
404页面
is_404()
判断当前页面是否带有“HTTP 404:Not Found”错误
分页页面
is_paged()
存档页面的分页,不包括通过<!--nextpage-->拆分的页面
附件页面
is_attachment()
判断是否为附件页面
是否为文章页、页面或附件
is_singular()
只要is_single()、is_page()、is_attachment()返回True,此函数就返回True
订阅
is_feed()
判断是否在订阅输出的页面
引用通告
is_trackback()
判断是否开启了Trackback功能
是否为预览
is_preview()
判断是否在预览页面
是否有摘要
has_excerpt()
判断当前文章或页面是否有摘要,这个函数很有用,可以帮助我们设置描述标签为摘要内容
has_excerpt('28')
判断ID为28的文章是否有摘要
是否在循环内
in_the_loop()
判断是否在主循环(Loop)中
侧边栏是否激活
is_active_sidebar()
判断侧边栏是否激活,需要将侧边栏的标识传递进去