如何自定义wordpress的Keywords和Description

前一阵子总是为博客没有关键词(Keywords)和描述(Description)而发愁,在很多查询网站信息的地方搜索我的博客,反馈的Keywords和Description都是空白的。而大家都知道,为每个页面自定义独有的titile显示方式和Keywords、Description对于SEO是非常重要的,我希望博客的主页、分类页面、Page页面都能有不同的Keywords和Description。

在网上找到了不少教程,但是大部分试验都失败了,使用插件效果也不是很好。不过就在我快绝望的时候,在柳城看到了一篇《SEO WordPress的Description、Keywords和Title(完整版)》,根据此文的介绍,成功的完成了对博客Title、Keywords和Description的SEO优化,而且这确实如作者所言,效果绝对可以和All in One SEO插件相媲美。

我使用的wordpress主题是Motion,在主题下的header.php中涉及到标题(title)的代码如下:

<title><?php wp_title('&#124;', true, 'right'); ?> <?php bloginfo('name'); ?></title>

按照柳城的方法,将这行代码改为:

<?php include_once("desc.php"); ?>

接下来把下面的代码保存为desc.php并上传到主题目录下就可以了。这个代码是我按照模板根据自己博客的情况重新改写的,包括所有分类页和Page页,供大家参考。大家可以根据自己博客的情况,修改对应的Page页ID和分类页ID并重新填写Keywords和Description,连我这个很多教程都搞不定的主题下都能搞定,相信你的一定也可以。

<?php if ( is_home() ) { ?><title><?php bloginfo('name'); ?> | <?php bloginfo('description'); ?></title><?php } ?>
<?php if ( is_search() ) { ?><title>搜索结果 | <?php bloginfo('name'); ?>:<?php bloginfo('description'); ?></title><?php } ?>
<?php if ( is_single() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?>:<?php bloginfo('description'); ?></title><?php } ?>
<?php if ( is_page() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?>:<?php bloginfo('description'); ?></title><?php } ?>
<?php if ( is_category() ) { ?><title><?php single_cat_title(); ?> | <?php bloginfo('name'); ?>:<?php bloginfo('description'); ?></title><?php } ?>
<?php if ( is_month() ) { ?><title><?php the_time('F'); ?> | <?php bloginfo('name'); ?>:<?php bloginfo('description'); ?></title><?php } ?>
<?php if (function_exists('is_tag')) { if ( is_tag() ) { ?><title><?php  single_tag_title("", true); ?> | <?php bloginfo('name'); ?>:<?php bloginfo('description'); ?></title><?php } ?> <?php } ?>
<?php
##定义一个函数.解决截取中文乱码的问题###
if (!function_exists('utf8Substr')) {
function utf8Substr($str, $from, $len)
{
return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'.
'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
'$1',$str);
}
}
if ( is_home() ){
$description = "Japhia的个人博客 记录生活点点滴滴 分享wordpress经验及软件技巧 关注社会热点新闻 免费师范生教育 探究历史教学方法";
$keywords = "博客,wordpress,软件,IT,历史,教学,娱乐,旅游,读书,免费师范生,计算机";
}
elseif ( is_single() ){
if ($post->post_excerpt) {
$description  = $post->post_excerpt;
} else {
if(preg_match('/<p>(.*)<\/p>/iU',trim(strip_tags($post->post_content,"<p>")),$result)){
$post_content = $result['1'];
} else {
$post_content_r = explode("\n",trim(strip_tags($post->post_content)));
$post_content = $post_content_r['0'];
}
$description = utf8Substr($post_content,0,220);
}

$keywords = "";
$tags = wp_get_post_tags($post->ID);
foreach ($tags as $tag ) {
$keywords = $keywords . $tag->name . ",";
}
}
###这里是分类页面。自行改变is_category的ID。###
elseif ( is_category(35) ){
$description = "记录Japhia旅行生活,上传旅行中的摄影作品,精彩的瞬间与你分享。";
$keywords = "旅行,旅游,摄影,照片,攻略,文化,自然";
}
elseif ( is_category(4) ){
$description = "分享计算机应用技巧、IT业界资讯和wordpress优化、软件使用技巧等内容 ";
$keywords = "wordpress,网络,计算机,电脑,IT,软件,系统,wordpress";
}
elseif ( is_category(7) ){
$description = "分享计算机应用技巧、IT业界资讯和wordpress优化、软件使用技巧等内容 ";
$keywords = "wordpress,网络,计算机,电脑,IT,软件,系统,wordpress,原创";
}
elseif ( is_category(8) ){
$description = "分享计算机应用技巧、IT业界资讯和wordpress优化、软件使用技巧等内容 ";
$keywords = "wordpress,网络,计算机,电脑,IT,软件,系统,wordpress,转载";
}
elseif ( is_category(66) ){
$description = "记录Japhia在工作中的经历和感悟";
$keywords = "求职,应聘,工作,职场";
}
elseif ( is_category(1) ){
$description = "记录Japhia生活中的点点滴滴,对于热点事件的评论,对于人生的感悟";
$keywords = "生活,学习,工作,随笔,日志,人生,博客,娱乐";
}
elseif ( is_category(6) ){
$description = "记录Japhia的教学经历和教学反思,讨论历史教学相关的问题";
$keywords = "免费师范生,教育,教学,历史,高中,师范,必修,选修,新课程";
}
elseif ( is_category(17) ){
$description = "分享Japhia的摄影、摄像作品,转载一些有意义的音频和视频资料。";
$keywords = "多媒体,音频,视频,图片,照片,摄影";
}
elseif ( is_category(46) ){
$description = "分享Japhia的书评,推荐好书好文,转载有价值的新闻报道、博文和文学作品";
$keywords = "读书,阅读,新闻,转载,文学,作品,";
}
elseif ( is_category(31) ){
$description = "分享Japhia感兴趣的国外新闻报道,从另一个角度看中国";
$keywords = "cnn,国外,news,新闻,报道,西方";
}
###这里是Page页。同上。多个页面的话自行添加就是###
elseif ( is_page(157) ){
$description = "Japhia在吐司网的作品和在虾米音乐网中分享的音乐专辑";
$keywords = "吐司,虾米,PS,音乐,photoshop";
}
elseif ( is_page(2) ){
$description = "Japhia的读者墙和留言板。有什么问题或建议请在这里留言! 欢迎交换友情链接!";
$keywords = "Japhia,留言板,评论,互动,友情链接,排行榜";
}
elseif ( is_page(671) ){
$description = "Japhia是一名微博控,这是我在饭否、新浪微博、腾讯微博、网易微博和嘀咕的微博秀";
$keywords = "微博,围脖,饭否,新浪,腾讯,嘀咕,网易";
}
elseif ( is_page(104) ){
$description = "分享Japhia在Flickr的相册,大多为个人摄影作品";
$keywords = "相册,Flickr,摄影,相机";
}
elseif ( is_page(476) ){
$description = "博客的归档页面,用来按月份存放Japhia的所有日志";
$keywords = "博客,日志,存档,归档";
}

?>
<?php echo "\n"; ?>
<meta name="description" content="<?php echo trim($description); ?>" />
<meta name="keywords" content="<?php echo rtrim($keywords,','); ?>" />