纯代码为WordPress站点添加关键词和描述

很多WordPress主题都没有加入关键词和描述功能,怎么办呢?教程开始:找到主题的header.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
<?php
$description = '';
$keywords = '';
 
if (is_home() || is_page()) {
   // 将以下引号中的内容改成你的主页description
   $description = "博客描述";
 
   // 将以下引号中的内容改成你的主页keywords
   $keywords = "关键词,注意关键词之前以英文逗号隔开";
}
elseif (is_single()) {
   $description1 = get_post_meta($post->ID, "description", true);
   $description2 = str_replace("\n","",mb_strimwidth(strip_tags($post->post_content), 0, 200, "…", 'utf-8'));
 
   // 填写自定义字段description时显示自定义字段的内容,否则使用文章内容前200字作为描述
   $description = $description1 ? $description1 : $description2;
 
   // 填写自定义字段keywords时显示自定义字段的内容,否则使用文章tags作为关键词
   $keywords = get_post_meta($post->ID, "keywords", true);
   if($keywords == '') {
      $tags = wp_get_post_tags($post->ID);    
      foreach ($tags as $tag ) {        
         $keywords = $keywords . $tag->name . ", ";    
      }
      $keywords = rtrim($keywords, ', ');
   }
}
elseif (is_category()) {
   // 分类的description可以到后台 - 文章 -分类目录,修改分类的描述
   $description = category_description();
   $keywords = single_cat_title('', false);
}
elseif (is_tag()){
   // 标签的description可以到后台 - 文章 - 标签,修改标签的描述
   $description = tag_description();
   $keywords = single_tag_title('', false);
}
$description = trim(strip_tags($description));
$keywords = trim(strip_tags($keywords));
?>
<meta name="description" content="<?php echo $description; ?>" />
<meta name="keywords" content="<?php echo $keywords; ?>" />

简单版

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
<?php if (is_home()){
$description = "博客描述";
$keywords = "关键词,注意关键词之前以英文逗号隔开";
}
elseif(is_single()){
if ($post->post_excerpt) {
$description = $post->post_excerpt;
}
elseif(function_exists('wp_thumbnails_excerpt')){
$description = wp_thumbnails_excerpt($post->post_content, true);
}
else {
$description = $post->post_title;
}
$keywords = "";
$tags = wp_get_post_tags($post->ID);
foreach ($tags as $tag ) {
$keywords = $keywords . "," . $tag->name;
}
}
elseif(is_category()){
$description = category_description();
}
echo "<meta name=\"description\" content=\"$description\" />
<meta name=\"keywords\" content=\"$keywords\" />";
?>

给指定分类定义:

1
2
3
4
5
6
7
8
9
10
11
12
if (is_category('音乐')) {
    $description = '这里填音乐分类的描述';
    $keywords = '这里填音乐分类的关键字,半角逗号隔开';
}
elseif (is_category('电影')) {
    $description = '这里填电影分类的描述';
    $keywords = '这里填电影分类的关键字,半角逗号隔开';
}
elseif (is_category('戏剧')) {
    $description = '这里填戏剧分类的描述';
    $keywords = '这里填戏剧分类的关键字,半角逗号隔开';
}

这样可以给不同页面添加单独的Description 和 Keywords,有利于SEO。

发表一条评论:

电子邮件地址不会被公开。 必填项已用*标注