Я задаюсь вопросом, есть ли у кого-либо хороший совет/опыт относительно установки динамических meta заголовков в Symfony?
В настоящее время решение, о котором я знаю, состояло бы в том, чтобы использовать следующий код для установки заголовка individidually в каждом действии:
$this->getResponse()->setTitle('This is a title');
Поскольку мне также нужны переведенные заголовки, я мог позвонить i18n помощнику в действии для включения их в извлеченный XLIFFs. Никакой специальный необходимый материал SEO, просто чистый заголовок.
Однако вышеупомянутое действительно требует, чтобы я настроил каждое действие отдельно. View.yml не подходит, поскольку у меня часто есть несколько действий/шаблонов на модуль.
Кто-либо знает о лучшем подходе в Symfony, или это - действительно правильный/единственный способ пойти?
Спасибо.
Думаю, писать отдельные заголовки для каждого действия - это нормально. Но если вы хотите добавить какой-то глобальный префикс, вы можете использовать что-то вроде этого в макете:
<title>SITE NAME — <?= $sf_response->getTitle() ?></title>
Также вы, вероятно, можете управлять заголовком для каждого модуля, используя метод preExecute () в действиях.
Следует использовать слотов .
В вашем макете
тег:
<title><?php echo get_slot('page_title', __('Default page title here')) ?></title>
И в шаблоне действия:
<?php slot('page_title', __('Action page title goes here')) ?>