摘要:我能想到,能够搜索或是访问到这篇文章的访客都是资深的seoer,自定义分类标题是深层的wordpress seo优化,可…
我能想到,能够搜索或是访问到这篇文章的访客都是资深的seoer,自定义分类标题是深层的wordpress seo优化,可以进一步提升网站的收录排名甚至用户体验,如果标题没有自定义的话,只是短短的两三个字案例或是新闻分类名称,很难被百度收录,那我们如果起一个长一点的标题,用户打开分类目录时又显得过于臃肿。
所以我们要想一个两全其美的方面,有应用中还是短标题,但是在标题栏目里可以自定义给搜索引擎一个优化过的长尾标题。经过大挖的努力终于找到了一个可以解决分类标题自定义的方法,但是只建议有开发经验的用户使用。
自定义WordPress分类标题和标签标题的方法:
1、把以下代码保存成一个PHP文件,如:wa-tit.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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
<?php
//自定义wordpress分类标题
class zm_wp_title{
function __construct(){
// 分类
add_action( ‘category_add_form_fields’, array( $this, ‘add_tax_title_field’ ) );
add_action( ‘category_edit_form_fields’, array( $this, ‘edit_tax_title_field’ ) );
add_action( ‘edited_category’, array( $this, ‘save_tax_meta’ ), 10, 2 );
add_action( ‘create_category’, array( $this, ‘save_tax_meta’ ), 10, 2 );
// 标签
add_action( ‘post_tag_add_form_fields’, array( $this, ‘add_tax_title_field’ ) );
add_action( ‘post_tag_edit_form_fields’, array( $this, ‘edit_tax_title_field’ ) );
add_action( ‘edited_post_tag’, array( $this, ‘save_tax_meta’ ), 10, 2 );
add_action( ‘create_post_tag’, array( $this, ‘save_tax_meta’ ), 10, 2 );
}
public function add_tax_title_field(){
?>
<div class=“form-field term-title-wrap”>
<label for=“term_meta[tax_zm_title]”>自定义标题</label>
<input type=“text” name=“term_meta[tax_zm_title]” id=“term_meta[tax_zm_title]” value=“” />
<p class=“description”>搜索引擎优化自定义标题,不填写即为默认标题</p>
</div>
<?php
} // add_tax_title_field
public function edit_tax_title_field( $term ){
$term_id = $term->term_id;
$term_meta = get_option( “zm_taxonomy_$term_id” );
$zm_title = $term_meta[‘tax_zm_title’] ? $term_meta[‘tax_zm_title’] : ”;
?>
<tr class=“form-field term-title-wrap”>
<th scope=“row”>
<label for=“term_meta[tax_zm_title]”>自定义标题</label>
<td>
<input type=“text” name=“term_meta[tax_zm_title]” id=“term_meta[tax_zm_title]” value=“<?php echo $zm_title; ?>“ />
<p class=“description”>搜索引擎优化自定义标题,不填写即为默认标题</p>
</td>
</th>
</tr>
<?php
} // edit_tax_title_field
public function save_tax_meta( $term_id ){
if ( isset( $_POST[‘term_meta’] ) ) {
$t_id = $term_id;
$term_meta = array();
$term_meta[‘tax_zm_title’] = isset ( $_POST[‘term_meta’][‘tax_zm_title’] ) ? $_POST[‘term_meta’][‘tax_zm_title’] : ”;
update_option( “zm_taxonomy_$t_id”, $term_meta );
} // if isset( $_POST[‘term_meta’] )
} // save_tax_meta
} // zm_wp_title
$wptt_tax_title = new zm_wp_title();
function the_zm_title() {
$category = get_the_category();
$term_id = $category[0]->cat_ID;
$term_meta = get_option( “zm_taxonomy_$term_id” );
$tax_zm_title = $term_meta[‘tax_zm_title’] ? $term_meta[‘tax_zm_title’] : ”;
echo $tax_zm_title;
}
function get_current_tag_id() {
$current_tag = single_tag_title(”, false);
$tags = get_tags();
foreach($tags as $tag) {
if($tag->name == $current_tag) return $tag->term_id;
}
}
function zm_tag_title() {
$term_id = get_current_tag_id();
$term_meta = get_option( “zm_taxonomy_$term_id” );
$zm_tag_title = $term_meta[‘tax_zm_title’] ? $term_meta[‘tax_zm_title’] : ”;
echo $zm_tag_title;
}
?>
|
2、把 wa-title.php 文件引入到主题主函数functions.php中,复制以下代码即可
1
2
|
//自定义标题
require get_template_directory() . ‘/title.php’;
|
完成后,分类编辑里已经出现自定义标题的选项框,下面我们做的就是前台调用
3、以下代码放到自定义 Title 中 ,这个具体需要根据主题情况
(个别主题title是有个人习惯和集成规则的,如果是一个已经运行了一段时间的网站进行这样的调整,是对seo有影响了,相当于重新调整了整站的tdk规则,所以请慎重使用)。
分类标题:
1
|
<?php if ( is_category() ) { ?><title><?php $title = the_zm_title(); echo ($title) ? ”.$title.” : single_cat_title(); ?> – <?php bloginfo(‘name’); ?></title><?php } ?>
|
标签标题:
1
|
<?php if ( is_tag() ) { ?><title><?php $title = zm_tag_title(); echo ($title) ? ”.$title.” : single_tag_title(“”, true); ?> – <?php bloginfo(‘name’); ?></title><?php } ?>
|
好的经过以上的操作,自定义分类的功能完成了,喜欢折腾的小伙伴尽管尝试一下吧。
来源:http://www.wazhuti.com/883.html