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高いところからの被リンクとかもそりゃ重要かもしれませんが、自力で出来ることからやった方がいいですね。
※もちろんこのロジックには長さチェックは入ってない。
キーワードが多(長)過ぎたら適宜カットするとかしないと逆効果。
わ・・・わかりにくい・・・ひどい・・・^^;;
http://d.hatena.ne.jp/kusakari/20080725/1216978488