独立博客大多数人选择了 WordPress,但功能强大的 WP 并非每位博主都能操纵自如的,发觉很多 WP 新手博主连最基本的标题及细节都没设置好,导致博客在搜索引擎的地位大受影响,下面来谈谈 WordPress 博客标题与优化的正确设置方法。

可能很多博主认为,最简单的方法就是使用插件,因为 WP 的插件实在太强太全了。但插件用得较多时,不仅会拖慢博客访问速度,还会造成服务器资源的过度消耗,且某些搜索引擎对有些插件很不友好,不当的使用会使博客在其权重大打折扣。例如 All in one SEO pack,它本是很多人推崇的 SEO 最佳插件,后来经过不断的实践证明,它不仅对服务器消耗太大,百度还对其非常不友好,之后才有人分析说这是一款针对谷歌设计的插件,所以才会遭百度的白眼。

那么在不使用插件的情况下如何做出一样效果的标题优化呢,来看看本人现在的设置,此方法是出自柳城的文章分享 (柳城是谁?去年博百优 SEO 大赛的 NO.1),操作方式有两种:

1 、先把原来 header.php 里的<title><?php……</title> 间这段代码改为<?php include_once("desc.php"); > 再把以下新的代码保存在 desc.php 就 OK 了 (如果有中文的话,记得另存为文件的编码是 UTF-8 。切记),把 desc.php 上传到你的主题的目录下。

2 、 (本人自己的做法) 把 header.php 里含<meta……></title><?php ……title> 的代码用以下新的代码覆盖即可,但有些主题的无法使用,因为有些主题的 header.php 里并无<meta……><title><>php ……</title> 之类。

新的代码为:

<?php if ( is_home() ) { ?><title><?php bloginfo('name'); ?> | <?php bloginfo('description'); ?></title><?php } ?>
<?php if ( is_search() ) { ?><title> 搜索结果 | <?php bloginfo('name'); ?></title><?php } ?>
<?php if ( is_single() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?></title><?php } ?>
<?php if ( is_page() ) { ?><title><?php echo trim(wp_title('',0)); ?> | <?php bloginfo('name'); ?></title><?php } ?>
<?php if ( is_category() ) { ?><title><?php single_cat_title(); ?> | <?php bloginfo('name'); ?></title><?php } ?>
<?php if ( is_month() ) { ?><title><?php the_time('F'); ?> | <?php bloginfo('name'); ?></title><?php } ?>
<?php if (function_exists('is_tag')) { if ( is_tag() ) { ?><title><?php single_tag_title("", true); ?> | <?php bloginfo('name'); ?></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 = "这里填写你博客的描述";
$keywords = "这里填写你博客的关键词";
}
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("
",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 . ",";
}
}
?>
<?php echo "
"; ?>
<meta name="description" content="<?php echo trim($description); ?>" />
<meta name="keywords" content="<?php echo rtrim($keywords,','); ?>" />

以上代码的用意在于,手工填写的 description 与 keywords 会成为博客首页的描述与关键词,文章的描述与关键词会提取每篇文章摘要与标签自动形成。代码中的 「|」 是主标题与副标题间的隔号,如果不习惯,可以换成自己喜欢的 「-」「>>」 等等,不太明白的朋友可以观察一下我博客的各处标题。

温馨提醒,在做每一处修改前请做好代码备份,不成功时还可以恢复原形。至于有没有设置成功,可把博客及文章地址复制到 chinaz 的 META 信息检测查询 http://tool.chinaz.com/Tools/MetaCheck.aspx 。