我是 Cakephp 新手,正在寻找如何设置页面标题和元关键字,desc。以获得最佳的 SEO 管理。
我检查了任何教程和问题,我想问一下是否有必要在控制器页面中设置标题,然后在 VIEW/mypage 的任何页面中获取?
我正在尝试以如下方式在我的主页中设置直接标题:
$this->set('title', 'My Page Title');
但这不起作用,有没有办法直接设置标题而不与控制器连接?
我正在使用CakePhp 的2.6.3版。
我是 Cakephp 新手,正在寻找如何设置页面标题和元关键字,desc。以获得最佳的 SEO 管理。
我检查了任何教程和问题,我想问一下是否有必要在控制器页面中设置标题,然后在 VIEW/mypage 的任何页面中获取?
我正在尝试以如下方式在我的主页中设置直接标题:
$this->set('title', 'My Page Title');
但这不起作用,有没有办法直接设置标题而不与控制器连接?
我正在使用CakePhp 的2.6.3版。
从 CakePHP 2.5 开始,设置标题的正确方法如下:
在您的布局中:
$this->fetch('title')
在你看来:
$this->assign('title', 'My Page Title')
这同样适用于元标记:
在您的布局中:
<? echo $this->Html->meta('keywords',$this->fetch('keywords'));?>
<? echo $this->Html->meta('description',$this->fetch('description'));?>
在你看来:
<? $this->assign('keywords', 'My meta tags')?>
<? $this->assign('description', 'My description')?>
更多关于CakePHP 布局。
标题标签将在使用的布局的 default.ctp 中设置,例如app/View/Layouts/default.ctp
. 你可以在那里硬编码你的价值观。
显示的值来自PagesController::display()
( app/Controller/PagesController.php
),从渲染视图所在的目录生成。
在控制器中设置您的 SEO 标题$this->set('seotitel', 'Foo')
应该将该值传播到default.ctp
,您可以在其中显示它:
<title>
<?php echo $seotitel ?>
</title>
注意,由于缺少正在运行的 2.6 实例,因此未经测试。