一般情況下head和foot都是公共頁面,這就導致網站的title和meta都是一樣的,這不利於SEO,如果想要網站更容易被用戶搜索到,就必須把title和meta設置動態
第一步:先建SEO表
表名是seo,結構如下:
動態展示的數據內容
第二步:把查詢到的數據放在公共區域
動態展示title,就必須把查詢到的數據放在公共區域,例如:Frontend控制器里的_initialize()
//當前控制器名稱+當前操作名稱(方法名稱) $seo = $this->request->controller().'/'.$this->request->action(); //條件查詢 $seoData = db('seo')->where(array('rule'=>$seo,'status'=>1))->find(); if($seoData){ $this->view->assign('title', $seoData['title']); $this->view->assign('keywords', $seoData['keywords']); $this->view->assign('description', $seoData['description']); }
第三步:數據展示
把數據展示在head公共頁面:
<title>{$title}</title> {if isset($keywords)} <meta name="keywords" content="{$keywords}"> {/if} {if isset($description)} <meta name="description" content="{$description} – {$site.name}"> {/if}
到了這一步就完成,這樣就可以動態展示title和mate,優化SEO