2014年08月14日 phpSEO対策web関連WordPress

重複しないWordPressのdescriptionのコードを書いてみました。
おおまかな確認はしていますが、細かいチェックは出来てません・・・m(_ _)m

Gistはこちら
<?php

//descriptionの設定
function set_description(){
	global $post;
	$content = $post->post_content;
	
	//トップページ
	if ( is_front_page() ) {
		$desc = get_bloginfo('name').":".get_bloginfo('description');
	}else{
		if(is_page() or is_single()){ //固定ページ、記事ページ
			//phpタグを除去
			$content = preg_replace("/<\?php[^>]+\>/i"," ",$content);
			//htmlタグを除去
			$desc = wp_title('',false)." | ".strip_tags($content);
		}elseif( is_category()){ //カテゴリページ
			if(get_query_var('paged')){
				$desc = get_query_var('paged')."ページ目:";
			}
			$desc .= wp_title('',false)."カテゴリの記事一覧";
		}elseif( is_archive()){ //アーカイブページ
			if(is_date()){ //日付ベースのアーカイブページ
				if(is_day()){ //日別アーカイブ
					if(get_query_var('paged')){
						$desc = get_query_var('paged')."ページ目:";
					}
					$desc.= get_the_time('Y'). '年';
					$desc.= get_the_time('m') .'月';
					$desc.= get_the_time('d'). '日';
				}elseif(is_month()){ //月別アーカイブ
					if(get_query_var('paged')){
						$desc = get_query_var('paged')."ページ目:";
					}
					$desc.= get_the_time('Y') .'年';
					$desc.= get_the_time('m'). '月';
				}else { //年別アーカイブ
					if(get_query_var('paged')){
						$desc = get_query_var('paged')."ページ目:";
					}
					$desc.= get_the_time('Y') .'年';
				}
			}elseif(is_author()){ //投稿者アーカイブ	
				if(get_query_var('paged')){
					$desc = get_query_var('paged')."ページ目:";
				}
				$desc .='[投稿者:'. get_the_author_meta('display_name', get_query_var('author'))."]";
			}elseif(is_tag()){	//タグアーカイブ
				if(get_query_var('paged')){
					$desc = get_query_var('paged')."ページ目:";
				}
				$desc.='[タグ:'. single_tag_title( '' , false )."]";
			}else{				
				if(get_query_var('paged')){
					$desc = get_query_var('paged')."ページ目:";
				}
				$desc .= wp_title('',false);		
			}
			$desc .= "の記事一覧";
		}elseif(is_search()) {	//検索結果
			if(get_query_var('paged')){
				$desc = get_query_var('paged')."ページ目:";
			}
			$desc.= '['. get_search_query() .']の検索結果一覧';

		}else{
			if(get_query_var('paged')){
				$desc = get_query_var('paged')."ページ目:";
			}
			$desc .= wp_title('',false);
		}
		
		//descriptionが短すぎる場合はサイト概要、サイト名追加
		if(mb_strlen($desc)<=30){
			$desc .= " ".get_bloginfo('description')."【".get_bloginfo('name')."】";
		}
	
	}
	//固定ページ、記事ページの本文抜粋の改行削除
	$desc = str_replace(array("\r\n","\r","\n"), '', $desc);
	echo '<meta name="description" content="'.esc_html($desc).'">';
}
//descriptionの設定

?>

この投稿へのコメント

コメントはまだありません。

ピックアップ記事

Twitter for Mac’s developer consoleの設定

2014年07月18日 twitter APIweb関連
Twitter for Mac’s developer consoleの設定
ちょうど設定してみたので、メモ。 まだ触ってないので詳しく分かりませんが、Twitter for Mac's developer consoleというのは、Twitter APIのテストが可能なのようです。 WEB版のコンソールもありますが、Twitter for Mac's developer consoleの方がサクサク動くらしいです。 DEVサイトにログイン、APP登録 まず…
「Twitter for Mac’s developer consoleの設定」をはてなブックマークに追加

Dust-Me Selectorsで不要なCSS要素を削除

2013年10月30日 web関連
Dust-Me Selectorsで不要なCSS要素を削除
FireFoxのアドオン「Dust-Me Selectors」を使えば、一度も使われていないCSSの要素を簡単に削除することが出来ます。 以下のURLにFireFoxからアクセスするとインストール可能です。 Dust-Me Selectors…
「Dust-Me Selectorsで不要なCSS要素を削除」をはてなブックマークに追加

親カテゴリIDを取得・表示

2011年11月28日 WordPress
現在表示中のページ(記事)の親カテゴリIDを表示させます。 [php] <?php // 現在のカテゴリ-を配列取得 $cat_now = get_the_category(); // 親の情報を$cat_nowに格納 $cat_now = $cat_now[0]; //category_parentを$parent_idに格納 $parent_id = $cat_now->cate…
「親カテゴリIDを取得・表示」をはてなブックマークに追加

WordPressのテーマをウィジェットに対応させる

2013年10月06日 phpweb関連WordPress
WordPressのテーマをウィジェットに対応させる
Wordpressで自作のテーマを作った場合などは、自分でウィジェットを利用可能にしない限り、ウィジェットは利用出来ません。このサイトのテーマは自作なのですが、今までウィジェットは使う機会がなかったので、未対応のままになっていました(:_;) 今回は、サイドにWordPress Popular Postsプラグインの人気記事一覧を表示させたかったので、調べてみましたよっ!ってことで、ウィジェ…
「WordPressのテーマをウィジェットに対応させる」をはてなブックマークに追加

twitter API v1.1を使ってツイート投稿

2014年08月01日 phptwitter APIweb関連
twitterのAPIを利用してツイートする必要があったので、メモ。 準備 まず、twitterのdevサイトでapp登録しておきます。 次に、ツイートする際に必要なOAuthという認証作業を簡単にしてくれるOAuthライブラリtwitteroauthをダウンロードします。リンク先に飛んだら右下の方にDownload ZIPというボタンがあるのでそこからダウンロード出来ます。 …
「twitter API v1.1を使ってツイート投稿」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy