chaihongjun.me

wordpress根据不同页面类型输出不同TDK

wordpress根据不同页面类型输出不同TDK

Wordpress默认的标题格式对于中文SEO不是特别的友好,所以针对不同页面类型,输出针对性标题是有利于网站的优化,网站的TDK优化是网站优化最主要的一个组成。

TITLE

<title><?php

    /* 如果是首页, 显示博客标题 */
    if(is_front_page() || is_home()) { 
        
      $title=trim(strip_tags(bloginfo('name')));  
      echo $title;


      /*如果是 文章页 或者 单页 显示文章 TITLE_网站名称*/
    } else if(is_single() || is_page()) {
        
        trim(strip_tags(single_post_title()));
        echo "_";
        trim(strip_tags(bloginfo('name')));
        
       if ( $paged > 1 ) { echo ('第'); echo ($paged); echo '页';}
  

       //文章标题_网站标题


      /*如果是分类页面*/     
    } else if(is_category()) {
       /*   两种方式
       //1.显示: XXX类目的文章存档
       // printf('%1$s 类目的文章存档', single_cat_title('', false)); 
       // 2.显示: 栏目标题_网站标题
       */
        single_cat_title( '', true );
        echo "_";
        trim(strip_tags(bloginfo('name')));


      /* 如果是搜索页面, 显示搜索表述 */   
    } else if(is_search()) {
        printf('%1$s 的搜索结果', wp_specialchars($s, 1));  
        /*如果是TAG页面, 显示标签表述 */
    } else if(is_tag()) {
        printf('%1$s 标签的文章存档', single_tag_title('', false));    
        /* 如果是日期页面, 显示日期范围描述 */
    } else if(is_date()) {
        $title = '';
        if(is_day()) {
            $title = get_the_time('Y年n月j日');
        } else if(is_year()) {
            $title = get_the_time('Y年');
        } else {
            $title = get_the_time('Y年n月');
        }
        printf('%1$s的文章存档', $title);  
        /*其他页面显示博客标题*/
    } else {
            $title=trim(strip_tags(bloginfo('name')));  
      echo $title;
    }?></title>

DESCRIPTION+KEYWORDS

<?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; ?>" />		

CSS+JS

<!-- 公共CSS,jS -->
<link rel="stylesheet" type="text/css" href=""/>
<script src="/javascripts/application.js" type="text/javascript" charset="utf-8" ></script>

<!-- 判断页面类型输出CSS,jS -->
<!-- 如果是主页  --> 

<?php
 if (is_home()) { ?> 
<link rel="stylesheet" href="cssA文件" type="text/css" /> 
<script src="首页js文件" type="text/javascript" charset="utf-8"></script>    
<?php } 

 elseif( is_single() ) { ?> 
<link rel="stylesheet" href="cssB文件" type="text/css" />   
<script src="文章页js文件" type="text/javascript" charset="utf-8"></script> 
<?php } 

elseif( is_archive() || is_search() ) { ?>   
<link rel="stylesheet" href="cssC文件" type="text/css" /> 
<script src="文章页js文件" type="text/javascript" charset="utf-8"></script>   
<?php }
 
 elseif( is_page() ) { ?>
<link rel="stylesheet" href="cssD文件" type="text/css" /> 
<script src="单页面js文件" type="text/javascript" charset="utf-8"></script>  
<?php }

 elseif( is_category() ) { ?>
<link rel="stylesheet" href="cssE文件" type="text/css" /> 
<script src="栏目页js文件" type="text/javascript" charset="utf-8"></script>  
 
 else { ?>
<link rel="stylesheet" href="cssF文件" type="text/css" /> 
<script src="其他的js文件" type="text/javascript" charset="utf-8"></script>  
<?php }


知识共享许可协议本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。作者:柴宏俊»