Я в настоящее время пытаюсь использовать cakephp для создания моей собственной небольшой CMS в php. Чтобы было легко изменить веб-сайт. Прежде всего я не веб-программист, это просто для свободного времени.default.ctp получить информацию от контроллера cakephp
У меня есть контроллер Кнопка и кнопка могут иметь несколько категорий. , поэтому я пытаюсь загрузить его в default.ctp, чтобы это меню загружалось для каждой страницы.
код default.ctp:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
<?php __('eg'); ?>
<?php echo $title_for_layout; ?>
</title>
<?php
echo $this->Html->css('cake.generic.style');
echo $scripts_for_layout;
?>
</head>
<body>
<div class="wrapper">
<div class="header">
<h1>Electro Geers Bvba</h1>
</div>
<div id="navMenu">
<?php
foreach ($buttons as $button) {
echo '<ul>';
echo '<li><a href="' . h($button['Button']['naam']) . '.html">' . h($button['Button']['naam']) . '</a>';
if (!empty($button['Category'])) {
echo'<ul>';
foreach ($button['Category'] as $category) {
echo '<li><a href="' . $category['naam'] . '.html">' . $category['naam'] . '</a></li>';
}
echo'</ul>';
}
echo '</li>';
echo '</ul>';
}
?>
<br class="clearFloat" />
</div>
<div class="contents">
<h3>Sectionale poorten en Hekwerken</h3>
<?php echo $content_for_layout; ?>
</div>
<div class="footer">
Copyright © 2012 - 2017
</div>
</div>
</body>
Я знаю, что CakePHP нормально probaly не должны использоваться как этот путь, но я хочу знать, если это возможно? Как я могу загрузить имя кнопки в default.ctp?
В настоящее время я получаю эту ошибку:
Notice (8): Undefined variable: buttons [APP\View\Layouts\default.ctp, line 20]
Предупреждения (2): Недействительный аргумент для Еогеаспа() [APP \ View \ Layouts \ default.c, строка 20]
Спасибо за ваш комментарий! –
В какой метод следует поместить этот код? – powtac
powtac: в AppController beforeFilter() Просто убедитесь, что все ваши контроллеры вызывают parent :: beforeFilter() в действии THEIR beforeFilter. – Dave