cakePHP2.xでこの機能あるのかな?ちょっとざっと調べてみた。(link prev, next タグって?)
SEOとか考えて、一覧ページなど複数のページで、一つのページを作っている場合、
head内に次のページはこのページとか、前のページはこのページとか指定したいので、
この機能作れるかなと調べてみた。
※AppHelper.php(app\View\Helper)にコレ追加すれば実現できそう。
function getPrevNextTag(){ $res = ''; if(!empty($this->params['paging'])){ $pagings = $this->params['paging']; foreach($pagings as $value){ $paging = $value; } $urls = explode('/',$this->url('', true)); array_pop($urls); $okurl = ''; foreach($urls as $v){ if(!preg_match('/page:/',$v)){ $okurl .= $v.'/'; } } if(!empty($paging['prevPage'])){ $prev = $paging['page']-1; $res .= '<link rel="prev" href="'.$okurl.'page:'.$prev.'">'."\n"; } if(!empty($paging['nextPage'])){ $next = $paging['page']+1; $res .= '<link rel="next" href="'.$okurl.'page:'.$next.'">'."\n"; } } return $res; }
呼び出しはapp\View\Layoutsで指定しているレイアウトの.ctpファイルのhead内に「echo $html->getPrevNextTag();」を追加するのみ!
なんて簡単なんだ。