WordPress中通常使用判断文章所属分类函数 in_category,来实现文章页自定义,但很多时候我们会和is_category函数混淆,特意做个总结和举例,希望对你制作wordpress主题有所帮助。
概述
in_category:判断当前文章或指定文章是否属于某个指定类别,只有直属的类别,不包括直属类别的父辈类别;可以在循环内使用,也可以独立使用。
is_category:判断是否正在显示一个类别归档页面。
in_category函数
in_category() 函数可以通过分类别名或ID判断当前文章所属的分类,用这个功能实现特定分类使用自定义模板或内容等,而且可以直接在循环(Loop)内部和外部使用。
1.如果是单个分类 ID ,比如ID 为 2 ,可以这样写
in_category(2)
2.如果是单个分类别名,比如别名为 themes,可以这样写
in_category('themes')
3.如果是多个ID,可以这样写
in_category( array('1', '2', '3') )
4.如果是多个别名,可以这样写
in_category( array( 'themes','plugins','develop') )
5.综合举例1
in_category函数通常用于主循环中,根据当前文章的类别采取不同的行动,在循环前我们判断分类如果是 fruit 就调用 single-fruit.php,如果是 vegetables 就调用 single-vegetables.php
6.综合举例2
if ( in_category( 'linux' )) {
// 如果这篇文章属于linux类,此处添加要执行的内容。
} elseif ( in_category( array( 'apache', 'nginx' ) )) {
// 如果这篇文章同时属于apache和nginx分类,此处添加要执行的内容。
} else {
// etc.
}
is_category函数
方法
< ?php is_category($category); ?>
参数
$category,也就是说这个参数可以嵌入单个分类归档的ID或标题,也可以嵌入多个分类组合的ID或标题。当然,这个参数的默认值是None。
返回值
要么是真(True),要么是假(False)
举例
< ?php
if(is_category())
//如果这是一个分类归档页面,此处添加要执行的内容。
if(is_category('1'))
//如果这是一个分类ID为1的分类归档页面,此处添加要执行的内容。
if(is_category('internet')){
//如果这是一个分类URL为internet的分类归档页面,此处添加要执行的内容。
if(is_category('电子商务'))
//如果这是一个分类标题为电子商务的分类归档页面,此处添加要执行的内容。
if(is_category(1,2,3)){
//如果这是一个分类ID分别为1,2,3的数组型分类归档页面,此处添加要执行的内容。
?>
总结
在wordpress里面判断某个东西是否属于某分类,则用in_category,而如果是想判断某个分类的表现,那就要用is_category函数。总之,分类页判断分类用is_category(), 内容页判断分类需用in_category()。
暂无评论内容