Использование мета-описания в нужном месте CakePHP 3

Я пытаюсь использовать метатеги и описание в cakephp 3. Пока это работает, но я столкнулся с проблемой, что не могу поместить их на свою страницу, потому что мои файлы .ctp отображаются в моем файле default.ctp.

Так, например, у меня есть меню, нижний колонтитул и т. д. в моем default.ctp, а моя страница для часто задаваемых вопросов находится в faq.ctp. Как я могу нажать на эти

<?php
echo $this->Html->meta('description','enter any meta description here');
?>

метаописание в теге head? Нужен ли мне язык шаблонов, такой как smarty, и использовать блоки?


person Isengo    schedule 20.04.2016    source источник


Ответы (2)


В макете:

<?php
echo $this->Html->meta('description',$description);
?

в вашем методе faq.ctp или faq():

<?php
$this->set('description','enter any meta description here');
?
person Salines    schedule 20.04.2016
comment
Вау, так просто! Большое спасибо @Salines!! - person Isengo; 20.04.2016

добавьте это в свой файл ctp (нет эха)

<?php $this->Html->meta('description', 'some text here', ['block' => true]);?>

и эта строка в вашем макете

<?php echo $this->fetch('meta');?>

см. также аналогичный вопрос с заголовком: $ this-›set('title', 'Название заголовка'); не работает в CakePHP 3.x

person dav    schedule 15.07.2016