山林生活

「All in One SEO Pack」を使わずに別の方法でSEO対策

「All in One SEO Pack」を使わずに別の方法でSEO対策

[更新日]
[著作者]

WordPressの魅力といえば様々なプラグインがあることです。

私に何の知識も無くてもプラグインがどうにかこうにかしてくれるわけです。一応多少のHTMLの知識はあるもののPHPとかJavaScriptとかよくわかんないし、何に使うのか、何が書いてあるのかもわからない程度です。そのためわからないことはGoogleに聞いてコピペで何とかサイトを作っています。

しかし、どうもサイトが重いんですよねー。

以前、サイトを軽くするためにキャッシュのプラグインを利用していました。
しかしそのプラグインが重さの原因となっていたのです。
そのため利用しなくなったのですが、サイトを色々いじり、そして新たなプラグインを入れると重くなってしまうのです。

「All in One SEO Pack」って重いらしいよ。

そんなことを言っている人がいました。このプラグインに関してはWordPressをやるんだったら最初に入れるプラグイン的な感じで、これさえあればSEO対策は万全!みたいなやつです。当然私も真っ先に入れたわけですが、どうもこれのせいで重くなっているのではないかと最近思いました。

だったらこれ、なくしちゃえばいいんじゃね?

ってことでプラグインを停止します。

「All in One SEO Pack」を使っていたっていっても、使っていたのは一部でした。
それを何とかすれば別にこれじゃなくてもいいんですよね。

使っていたのはmeta descriptionとタイトル、nofollowだけです。
googleSitemapは別のプラグインを使用してますし、アナリティクスに関しては直接打ち込んでいます。つまり三つのやつを別の形で対処すれば「All in One SEO Pack」は不要になるわけです。

すべてはfunctions.phpに書くことで何とかなりました。
まずタイトルについて。


//titleの設定
add_theme_support( 'title-tag' );

これだけで大丈夫です。
以前のワードプレスはヘッダーにタイトルタグを入れていましたがWordpress4.4以降はfunctions.phpに書き込むだけで出力できるみたいです。

区切り線は「‐」ではなく「|」を使用するため、


//区切り線の設定
function change_title_separator( $sep ){
    $sep = '|';
    return $sep;
}
add_filter( 'document_title_separator', 'change_title_separator' );

を入れます。
これでタイトルは問題ありません。細かな設定もできるようですが、とくに問題なさそうなのでそのままにしました。

続いてnofollowについてです。


function code_seo()
{
	if ( is_tag()  || is_date() || is_year() || is_author() || is_search() || is_404() ) {
		echo '<meta name="robots" content="NOINDEX,FOLLOW">';
	}
}
add_action('wp_head','code_seo');

タグページとか404ページとかをnoindex,followにするためのコードです。
こちらもfunctions.phpに。

最後にmeta descriptionに関してですが、以下の形で対応しております。


// get meta description from the content
function get_meta_description() {
  global $post;
  $description = "";
  if ( is_category() ) {
    // カテゴリーページはカテゴリーの説明文を取得
    $description = category_description();
  }
  elseif (is_single()|| is_page() )  {
    if ($post->post_excerpt) {
      // 記事ページ、固定ページでは、記事本文から抜粋を取得
      $description = $post->post_excerpt;
    } else {
      // post_excerpt で取れない時は、自力で記事の冒頭80文字を抜粋して取得
      $description = strip_tags($post->post_content);
      $description = str_replace("\n", "", $description);
      $description = str_replace("\r", "", $description);
      $description = mb_substr($description, 0, 80) . "...";
    }
  } else {
    ;
  }
 
  return $description;
}

当サイトのトップページは固定ページとなっております。そのため「is_page()」で対応。
基本的には記事本文の最初から80文字を抜粋してmeta descriptionに表示しています。

でも、最初の80文字をディスクリプションに乗せるだけだとSEO効果が低いって考える人もいますよね。
例えば当サイトの一例を挙げてみると、

【オフグリッドを目指す】山林生活における電気のおはなし
【オフグリッドを目指す】山林生活における電気のおはなし

オフグリッドな生活に憧れてソーラーパネルによる自家発電の構築を考えております。700w分のパネルで2Kwhを発電

最初の80文字

「テレビもねぇ、ラジオもねぇ、車もそれほど走ってねぇ、信号ねぇ、あるわけねぇ、おらの土地には電気がねぇ。と思っていたのですが「電気」ありました。」

これではなんのページなのか全くわかりません。そのため自分でディスクリプションは設定したい!となるわけですが、これに関しては表示オプションの「抜粋」を使えば対応できるようです。記事投稿画面右上の「表示オプション」をクリックするとメニューがドロップダウンします。その中から「抜粋」にチェックを入れるだけ。そうすると投稿画面下に抜粋の枠が表示されます。こちらにディスクリプションに入れたい文章を書けばよいだけです。

「オフグリッドな生活に憧れてソーラーパネルによる自家発電の構築を考えております。700w分のパネルで2Kwhを発電するための考察。」

まぁまぁましになったのではないでしょうか。
でも、この「抜粋」は記事投稿でしか使えません。そのため固定ページでも利用できるようにfunctions.phpに以下を記入。


add_post_type_support( 'page', 'excerpt' );

これで固定ページにも抜粋欄が登場するようになります。
ディスクリプションに問題なし。nofollowも問題なし。タイトルも問題なし。
「All in One SEO Pack」で利用していた部分は全て移管することが出来ました。
とりあえず「All in One SEO Pack」については削除しました。

消した結果、多少読み込みが早くなった気がします。気のせいかもしれませんが。。。

関連記事

フィギュアを撮影してブログに載せるのは著作権侵害?
フィギュアを撮影してブログに載せるのは著作権侵害?

当サイトのPV数が伸び悩んでかれこれ6カ月が経過しました。5月にあったGoogleコアアップデート以降全く変わらないアクセス...

 
Youtube、増えない登録者数
Youtube、増えない登録者数

登録者数1000人、総再生時間4000時間を目指しyoutubeで動画を毎日更新しています。 昨年末より動画をアップし...

 
ぼくたち、わたしたちはインターネットエクスプローラーから卒業します
ぼくたち、わたしたちはインターネットエクスプローラーから卒業します

私が初めてパソコンを触った時に使用していたインターネットブラウザはネットスケープナビゲーターでした。当時はネットワークにつな...

 
RawをPhotoshopで編集するならミラーレスカメラいらなくね?
RawをPhotoshopで編集するならミラーレスカメラいらなくね?

ミラーカメラを買って以降、普段からカメラを持ち歩くことになりました。これまで“できる限り荷物は少なく”をモットーにしてきまし...

 
旅ブログでは稼げない。旅人という仕事で利益を得るためには?
旅ブログでは稼げない。旅人という仕事で利益を得るためには?

アフィリエイト、ブロガー、デイトレード、写真家...。 色々な仕事に手を出したもののそもそもの能力が足りないためどれも大し...

 

Profile

Author:

山林生活

山林生活を目指す。
でも都市型生活、旅行を中心にブログを書いてます。⇒プロフィール

お気に入りRSS