给WordPress博客页面添加动态关键字和描述

WordPress的页面没有关键字和描述,本人在网上搜索了一上午,加了自己的修改,以下这个完美可用^_^。

以下代码加到header.php文件</title>标签的后面。

<?php
//如果是首页
if (is_home()){
$keywords = "爱博说";
$description = "我的网络收藏夹,每天学习一点,每天进步一点。";
//去掉两段空格
$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));
//输出
echo "<meta name=\"description\" content=\"$description\" />
<meta name=\"keywords\" content=\"$keywords\" />";
}
//如果是文章页
elseif (is_single()){
//默认使用文章页添加关键字
$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, ', ');
}
//默认使用文章页添加描述
$description = get_post_meta($post->ID, "description", true);
//如果为空,使用文章前100个字作为描述
if($description == ""){
if($post->post_excerpt){
$description = $post->post_excerpt;
}else{
$description = str_replace(array("\n","\""),array("","&quot;"),mb_strimwidth(strip_tags($post->post_content), 0, 200, "…", 'utf-8'));
}
}

$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));

echo "<meta name=\"description\" content=\"$description\" />
<meta name=\"keywords\" content=\"$keywords\" />";
}
//如果是页面,使用页面添加的关键字和描述
elseif (is_page()){
$keywords = get_post_meta($post->ID, "keywords", true);
$description = get_post_meta($post->ID, "description", true);

$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));

echo "<meta name=\"description\" content=\"$description\" />
<meta name=\"keywords\" content=\"$keywords\" />";
}
//如果是分类页,使用分类名作为关键字,分类描述作为描述
elseif (is_category()){
$keywords = single_cat_title('', false);
$description = category_description();

$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));

echo "<meta name=\"description\" content=\"$description\" />
<meta name=\"keywords\" content=\"$keywords\" />";
}
//如果是标签页,使用标签名作为关键字,标签描述作为描述
elseif (is_tag()){
$keywords = single_tag_title('', false);
$description = tag_description();

$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));

echo "<meta name=\"description\" content=\"$description\" />
<meta name=\"keywords\" content=\"$keywords\" />";
}
?>

给文章添加关键字的方法:打开撰写新文章右上角的显示选项,勾选自定义栏目,文章编辑框下面的自定义栏目中名称输入keywords,值输入你的关键字,添加。