Title Image

Blog

首页和文章显示keywords和description.

  |   Geek   |   No comment

13-3-3 sbw更改主题文件header.php***************************************************

更改了header.php.让首页和文章显示keywords和description.
在源文件中删除了原文件的<keywords>和<description>表达式

更改为:

<?php
//如果是首页
if (is_home()){
$keywords = “你网站首页的关键字,自己修改吧”;
$description = “你网站首页的描述,自己修改吧”;
}

//如果是文章页

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 = mb_strimwidth(strip_tags(apply_filters(‘the_content’,$post->post_content)),0,200);
}
}
}

//如果是页面,使用页面添加的关键字和描述
elseif (is_page()){
$keywords = get_post_meta($post->ID, “keywords”, true);
$description = get_post_meta($post->ID, “description”, true);
}

//如果是分类页,使用分类名作为关键字,分类描述作为描述

elseif (is_category()){
$keywords = single_cat_title(”, false);
$description = category_description();
}
//如果是标签页,使用标签名作为关键字,标签描述作为描述
elseif (is_tag()){
$keywords = single_tag_title(”, false);
$description = tag_description();
}

//去掉两段空格
$keywords = trim(strip_tags($keywords));
$description = trim(strip_tags($description));
?>
<meta name=”keywords” content=”<?php echo $keywords; ?>” />
<meta name=”description” content=”<?php echo $description; ?>” />

当中的[0,200]是限制了文章的截取位置作为description.但是由于主题的分享插件可能在文章前面.所以新浪微博的代码被当成内容被截取.所以我把
其改为了[520,720]正好跳过了代码片段.所以当分享插件有更改,文章的description应该会截取错误.!!
还有就是,因为主题的首页设置成了静态页面.实际上是页面.而页面的描述.是需要在编辑页的[自定义栏目]添加keywords和description分别给值的.

No Comments

Post A Comment