付费节点推荐
免费节点
节点使用教程
大家都知道,WordPress自带的分类目录是设置是很简单的,只能设置标题和上下级关系,不能实现标题自定义,添加关键字和描述信息。
有时候想对分类目录做一些seo关键字优化也是无从下手,虽然有很多插件可以实现,但是你懂的,插件安装太多,网站的速度会被拖慢,所以能不用插件的时候我都不用插件,好在wordpress扩展性很强,我们可以通过扩展来实现。
小伙伴们可以查看我的博客分类目录的标题、关键字和描述信息都是自定义的。
后台效果图就这样,下面来说说具体的实现。
第一步 新建seocategory.php文件
新建一个新建seocategory.php文件,将其放入你的主题文件夹内。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
<?php add_action( 'edit_category_form_fields' , 'category_function' ); function category_function(){ if (isset( $_GET [ 'action' ]) && $_GET [ 'action' ] == 'edit' ) $value = get_option( 'cat_set_' . $_GET [ 'tag_ID' ]); $title = 'cat_title' ; $keywords = 'cat_keywords' ; $description = 'cat_description' ; ?> <table class = "form-table" ></table> <h2>自定义SEO信息</h2> <table class = "form-table" > <tbody> <tr class = "form-field" > <th scope= "row" valign= "top" ><label for = "<?php echo $title ?>" >标题</label></th> <td><input name= "<?php echo $title ?>" id= "<?php echo $title ?>" type= "text" value="<?php echo esc_attr( stripslashes ( $value [ 'title' ])); ?> "><p class=" description">默认调用分类名称作为Head中Title信息。</p> </td> </tr> <tr class = "form-field" > <th scope= "row" valign= "top" ><label for = "<?php echo $keywords; ?>" >关键词</label></th> <td><input name= "<?php echo $keywords; ?>" id= "<?php echo $keywords; ?>" type= "text" value="<?php echo $value [ 'keywords' ]; ?> "><p class=" description">多个关键词用小写逗号“,”分隔开;默认调用分类名称作为Head中KeyWords信息。</p> </td> </tr> <tr class = "form-field" > <th scope= "row" valign= "top" ><label for = "<?php echo $description; ?>" >描述</label></th> <td><textarea name= "<?php echo $description; ?>" id="<?php echo $description ; ?> " rows=" 3 " cols=" 30 "><?php echo stripslashes($value['description']); ?></textarea><p class=" description">若未设置,将显示为“关于‘某某’分类下的所有文章。”作为Head中Description信息。</p> </td> </tr> </tbody> </table> <?php } add_action( 'edit_category' , 'save_category_function' ); function save_category_function(){ if (isset( $_POST [ 'action' ]) && isset( $_POST [ 'taxonomy' ]) && $_POST [ 'action' ] == 'editedtag' && $_POST [ 'taxonomy' ] == 'category' ){ update_option( 'cat_set_' . $_POST [ 'tag_ID' ], array ( 'title' => $_POST [ 'cat_title' ], 'description' => $_POST [ 'cat_description' ], 'keywords' => $_POST [ 'cat_keywords' ], 'template' => $_POST [ 'cat_template' ], 'orderby' => $_POST [ 'cat_orderby' ], 'per_page' => $_POST [ 'cat_per_page' ],)); } }; ?> |
第二步 引入到functions.php
将seocategory.php引用到你主题的functions.php 文件中
1
|
include ( "seocategory.php" ); |
第三步 前台调用
后台把相关信息添加好后,就需要到模板进行调用,使用方法如下。
标题获取
1
2
3
4
5
6
7
8
9
|
if ( is_category() ) { $cat_id = get_query_var( 'cat' ); $val = get_option( "cat_set_$cat_id" ); if (! Empty ( $val ) && $val [ 'title' ]!= '' ){ $title = $val [ 'title' ]. ' - ' .get_bloginfo( 'name' ); } else { $title = single_cat_title( '' , false). ' - ' .get_bloginfo( 'name' ); } } |
关键字获取
1
2
3
4
5
6
7
8
9
|
if ( is_category() ) { $cat_id = get_query_var( 'cat' ); $val = get_option( "cat_set_$cat_id" ); if (! Empty ( $val ) && $val [ 'keywords' ]!= '' ){ $keywords = $val [ 'keywords' ]; } else { $keywords = single_cat_title( '' , false); } } |
描述获取
1
2
3
4
5
6
7
8
9
|
if ( is_category() ) { $cat_id = get_query_var( 'cat' ); $val = get_option( "cat_set_$cat_id" ); if (! Empty ( $val ) && $val [ 'description' ]!= '' ){ $description = $val [ 'description' ]; } else { $description = $blog_name . "'" . single_cat_title(' ', false) . "' "; } } |
当然,每个主题有不同的优化方式,上面只是介绍了获取方式,你还需要把它插入到你的主题中去,每个主题对标题,关键字,描述有不同的写法,你需要做的就是把它整合到你的主题中去.
未经允许不得转载:Bcoder资源网 » 为WordPress分类目录优化添加seo标题、关键字和描述
评论前必须登录!
登陆 注册