CakePHP::ページごとのmeta keywords, description

DB使わない静的ページのみでも
CakePHPは慣れればつかえると思います、DB拡張も楽ですし。

同じキーワードだと、クロールされたときにもったいないですので、ページごとに keywords は変えたい。
とりあえず、サイト全体で使うキーワードを keyword.txtとかで列挙して、どっかに設置。下準備はOK。

layout の 部分には e(renderElement(‘keywords’)); を入れておいて、
エレメントで↓のようなファイルを作っておく
elements/keywords.ctp

< ?php
	$keywords = file( PATH_TO . 'keyword.txt' );
	$ret = implode( ',' , $keywords);
	$keywords = str_replace( PHP_EOL , '' , $ret);
	if(isset($this->pageKeyword)){
		$keywords = $this->pageKeyword . ',' . $keywords;
	}

	?>
<meta name="keywords" content="<?php e($keywords);?>" />

で、静的ページ hoge.ctp の内部に
$this->pageKeyword = ‘そのページ,で推したい,キーワード!’;

とか埋めとけば、レンダリングされるときに pageKeyword が設定されてれば、
生成されたページのkeywordsの先頭に入ってくれます。
動的な商品紹介ページとかだったら、テーブルに商品ごとのキーワード、JANコードなどを登録しておけるようにして、
viewに渡してあげれば、存在すればキーワードが優先で設定されるし、なければ標準のキーワードでページが生成される。
description も同等の方法で、同じ文章ばっかりを使い回されるのはもったいないので、やってあげれば効果的…かな。

pageRank高いところからの被リンクとかもそりゃ重要かもしれませんが、自力で出来ることからやった方がいいですね。

※もちろんこのロジックには長さチェックは入ってない。
キーワードが多(長)過ぎたら適宜カットするとかしないと逆効果。

わ・・・わかりにくい・・・ひどい・・・^^;;

One thought on “CakePHP::ページごとのmeta keywords, description”

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です