在寻找All in One SEO Pack插件的替代方案前,首先要弄明白这个问题。下面几个功能是最有价值的,也是wordpress默认无法提供的:
1、博客的标题(title)应当写成内容 | 博客名的形式;
2、head部分添加充足的meta说明;
3、让搜索引擎不要索引存档页面,存档页面都是重复内容,这会降低博客的评分。
4、为每一篇文章以及博客首页,加上独特的关键词(keywords);
下面就会针对这些问题,给出解决方案。如果你不大了解php语言,只需要按照说明复制粘贴到自己的wordpress模板中就可以了。
修正博客的标题
在模板文件夹中找到header.php文件,打开后修改title标签:
<title><?php wp_title(‘ | ‘, true, ‘right’); ?><?php bloginfo(‘name’); ?></title>
/**或者干脆把博客的名字写死,你总不会时常换博客名字吧**/
<title><?php wp_title(‘ | ‘, true, ‘right’); ?>Cogipard Playground</title>
添加充足的meta说明
还是修改header.php文件,在head标签中酌情加入如下内容:
/**博客的描述性内容,你可以像我这样写死,也可以采用wordpress的副标题(用bloginfo(“description”)获得)**/
<meta name=”description” content=”A personal online home, portfolio and journal.” />
/**博主的名字**/
<meta name=”author” content=”dotswing” />
/**版权信息**/
<meta name=”copyright” content=”Cogipard Playground” />
不索引存档页面
修改header.php文件,紧接着上述的meta标签,加入:
<?php if (is_single() || is_page() || is_home() ) : ?>
<meta name=”robots” content=”index,follow” />
<?php else : ?>
<meta name=”robots” content=”noindex,follow” />
<?php endif; ?>
这样对于存档页面,搜索引擎就不会去索引这些重复的内容了。
个性化输出页面文章的关键词
在模板文件夹下的functions.php文件中,加入如下的函数:
function keywords() {
$keywords = ”;
if( is_single() || is_page() ){
$terms = get_the_terms( get_the_ID(), ‘post_tag’ );
if ( is_wp_error( $terms ) )
return $terms;
if ( empty( $terms ) )
return false;
foreach ( $terms as $term ) {
$keywords .= $term->name;
$keywords .= ‘, ‘;
}
}
else {
$tags = get_tags(‘orderby=count&order=DESC’);
foreach ($tags as $tag){
$keywords .= $tag->name;
$keywords .= ‘, ‘;
}
}
$keywords = substr($keywords, 0, strlen($keywords)-2);
echo $keywords;
}
这个函数的作用是,如果访客浏览的是单独的某文章页面,就会把该文章对应的tag提取出来,作为关键词;如果是其它页面,则把博客所有的tag一起输出成关键词。关键词用逗号隔开。
在header.php中调用这个函数:
<meta name=”keywords” content=”<?php keywords();?>” />
functions.php中的代码,可以在模板页中直接使用,wordpress已经为我们做好了include操作,不需要自己来写include_once(‘functions.php’);了。
发表回复