FAQ

Материал из GLENN CMS WIKI
Перейти к: навигация, поиск

В. Как создать страницу?

1. Прочитать как оно всё работает.
2. Если страница содержит в основном текстовые / графические материалы и не несёт динамики, то можно просто воспользоваться плагином pages который при переходе на несуществующую страницу предлагает создать её, используя выбранный скин.
3. Для динамических страниц необходимо создать плагин/контроллер/экшн и внутри экшна запрограммировать поведение. Тут описано как создать свой плагин.
* Плагин Pages доступен в репозитории https://svn.glenn.ru/plugin_pages/trunk. Он должен располагаться в папке /plugins/pages
* Доступные методы внутри контроллера и его устройство

В. Как работать с базой данных?

- Работа с базой осуществляется через классы модели (прим.: wikiModel.php) которые располагаются в папке models плагина и отнаследованы от DbModel.php

В. Как создать AJAX action

- $this->useAjaxView(); внутри экшна.

В. Как вывести свой текст на страницу.

- Выводом текстовой информации занимается шаблонизатор Smarty. Логика отрисовки того или иного шаблона исходит из того в каком плагине / контроллере / экшне мы сейчас находимся.
- Для того чтобы передать переменную внутрь шаблона, внутри экшна необходимо сделать $this->view->my_Var = "myValue";
  Так можно передавать массивы, объекты и переменные.
  Внутри шаблона (*.tpl) переменная будет доступна как {$my_Var}. Подробнее можно прочитать в документации к SMARTY http://www.smarty.net/docsv2/ru/


Как подключить свой стиль / js файл

- Чтобы подключить свой стиль необходимо разместить файл (*.js | *.css ) в соответствующей папке, на основе текущего плагина / контролллера / экшна. За это отвечает система автоподключения стилей.


В. Как написать консольный скрипт.

- Консольные скрипты хранятся в папке system, внутри плагина. Для того чтобы в скрипте были доступны модели, классы Zend, конфиг и прочие необходимые вещи.
  Первой строкой надо создать переменную $root, указывающий на корневую папку проекта, а затем сделать include файла $root.'cms/system/Console_app_header.php'
  Который сделает всё необходимое чтобы можно было использовать модели, Zend_Config и прочие вещи.

Автозапуск

- Про автозапуск подробно написано в этой статье