2

我是 Cakephp 新手,正在寻找如何设置页面标题和元关键字,desc。以获得最佳的 SEO 管理。

我检查了任何教程和问题,我想问一下是否有必要在控制器页面中设置标题,然后在 VIEW/mypage 的任何页面中获取?

我正在尝试以如下方式在我的主页中设置直接标题:

$this->set('title', 'My Page Title');

但这不起作用,有没有办法直接设置标题而不与控制器连接?

我正在使用CakePhp 的2.6.3版。

4

2 回答 2

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 布局

于 2015-12-04T20:08:30.760 回答
0

标题标签将在使用的布局的 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 实例,因此未经测试。

于 2015-12-04T18:27:50.410 回答