Cakephp-1.2とCakephp-1.3の両方で、レイアウトhead
から呼び出されるという名前の要素で次のコード スニペットを使用しました。blog
$this->preMetaValues = array(
'title' => __('SiteTitle', true).' '.$title_for_layout,
'desc' => Configure::read('siteTitle').', '.Configure::read('siteSlogan'),
'keywords' => Configure::read('keywords'),
'type' => 'article',
'site_name' => __('SiteTitle', true),
'imageURL' => $html->url('/img/logo.png', true)
);
if(!isset($this->metaValues)){
$this->metaValues = $this->preMetaValues;
}
else{
$this->metaValues = array_merge($this->preMetaValues, $this->metaValues);
}
<?php echo $html->meta('description',$this->metaValues['desc']); ?>
<?php echo $html->meta('keywords', $this->metaValues['keywords']);?>
上記のコードを使用して、任意のビュー ファイルからメタ タグ値を定義または変更しました。はpreMetaValues
デフォルト値と見なされます。ビューに定義されているものがある場合metaValues
、このコードはそれを変更し、metaValues
使用できるようにします。
Cakephp -2.4では、記述されたコードは次のエラーを生成します。
ヘルパー クラス metaValuesHelper が見つかりませんでした。
エラー: 内部エラーが発生しました。
実際、CakePHP がこの変数をヘルパーと見なす理由がわかりません。どうすればこの問題を解決できますか?