WordPress自定义分类目录标题
众所周知,在一个网站的SEO过程中,标题的作用举足轻重。是因为标题的权生分配很高,但是WP默认的模板中,分类目录的标题是很简单的,往往达不到我们想要的效果。很多人马上想到要用到WP插件,没错,是有这样的插件来解决问题,本文这里不多说。本文接下来要介绍的是,利用分类描述里文字作分类目录页面的标题。
方法一:
这里主要用到category_description()函数,返回用户在当前分类目录所填写的说明信息。
用法:
1 | <?php echo category_description( $category ); ?> |
参数:$category 被返回说明信息的分类目录的数值型ID。若用户未指定分类目录,默认为当前分类目录。类型为整型
示例:
1 | <?php echo category_description(3); ?> |
返回结果:WordPress is a favorite blogging tool of mine and I share tips and tricks for using WordPress here.
1 | <?php single_cat_title('当前分类'); ?>: <?php echo category_description(); ?> |
返回结果:当前分类WordPress: WordPress is a favorite blogging tool of mine and I share tips and tricks for using WordPress here.
有时候category_description()函数输出会带HTML标签,可以使用如下格式解决。
1 |
完整代码如下:
1 2 3 4 5 6 | <?php if( category_description() ) { echo strip_tags(trim(category_description())); } else { single_cat_title();} ?> |
相关知识如下:
wordpress 获取分类ID,分类标题,分类描述,分类链接url函数
get_cat_ID() 根据分类名称获取分类ID
用法:
1 | <?php get_cat_ID( $cat_name ) ?> |
参数:$cat_name 分类名称 默认值为”General”。类型为字符型,可选
返回的值:出错时返回0,成功则返回分类ID号,类型为整数
示例:
1 2 3 4 5 6 7 | <?php $category_id = get_cat_id('Category Name'); query_posts('cat='.$category_id); if (have_posts()) : while (have_posts()) : the_post(); the_content(); endwhile; endif; ?> |
get_category_link() 根据分类ID获取分类的链接URL
用法:
1 | <?php get_category_link( $category_id ) ?> |
参数:$categroy_id 分类ID号 默认值:None,类型为整数,必需
返回的值:分类URL 字符串型
示例:
1 2 3 4 5 | <?php $category_id = get_cat_ID( 'Category Name' ); $category_link = get_category_link( $category_id ); ?> <a href="<?php echo $category_link; ?>" title="Category Name">Category Name</a> |
the_category() 显示文章所属分类目录的链接。此标签必须在主循环中。
用法:
1 | <?php the_category( $separator, $parents ); ?> |
参数:$separator 显示在分类目录链接之间的文字或字符。默认以无序列表方式排列分类目录链接。字符串型
$parents 怎样显示子分类目录链接,字符串型,值包括:
‘multiple’——显示父分类与其子分类的链接以展示”父子”关系
‘single’——只显示子分类的链接,用链接文本标出”父子”关系
默认值为显示子分类链接,无标识文字。
示例:
用逗号隔开分类目录
列出分类目录,(在分类目录数量多于一个的情况下)以逗号作为分隔符。
用箭头隔开分类目录
列出分类目录,以箭头(>)作为分隔符。(使用时请注意,有些访问者可能会将分类>分类这种格式解读为一对具有“父子”关系的分类。)
single_cat_title() 显示或返回当前页面的分类目录标题。
对那些显示WordPress标签而非分类目录标题的页面(如”/tag/carceer”),该标签显示或返回标签名称。该标签只能用在WordPress主循环(loop)之外。
用法:
1 | <?php single_cat_title( $prefix, $display ); ?> |
默认用法:
1 | <?php single_cat_title('prefix'=>,'display'=> true ); ?> |
参数:
$prefix 输出时在标题前的文本信息。默认值:None,类型是字符串,可选
$display 显示标题(TRUE)或返回标题以便用在PHP中(FALSE)。默认值:TRUE,类型是布尔型 可选
示例:
下面这个例子在分类目录标题后显示“当前分类:”字样:
输出:当前分类是wordpress
下面这个例子将当前分类目录标题赋值给变量$current_category以用在PHP中。
1 | <?php $current_category = single_cat_title("", false); ?> |
方法二:
利用is_category()函数判断,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | if (is_category('音乐')) { $description = '这里填音乐分类的描述'; $keywords = '这里填音乐分类的关键字,半角逗号隔开'; } elseif (is_category('电影')) { $description = '这里填电影分类的描述'; $keywords = '这里填电影分类的关键字,半角逗号隔开'; } elseif (is_category('戏剧')) { $description = '这里填戏剧分类的描述'; $keywords = '这里填戏剧分类的关键字,半角逗号隔开'; } // 多个分类,复制9-12行代码,粘贴到13后面行,类似5-12行,改一下分类名称即可 // 使用UTF-8编码另存为,替换原来的文件,否则可能会乱码 |
本文固定链接: http://www.ouchaoman.com/2014/05/27/wordpress-category_description/ | 欧阳博客