Рішення: використання спеціально для цього придуманих помічників виду (view helpers) в ZF.
Я використовую ElRTE і ElFinder в адміністративній панелі сайту. Це найбільш зручні інструменти для візуального редагування html-контенту, а також для роботи з файлами на серверами. Тому приклад буде для модуля admin. Втім, змінивши назву модуля на Application, приклад прекрасно підійде для модуля за замовчуванням (той який в основній папці "/ application /").
2. Завантажуємо і зберігаємо в "/ public / js /" ElRTE і ElFinder
4. Створюємо файл "/application/modules/admin/view/helpers/EnableElRTE.php" наступного змісту:
5. Створюємо файл "/application/modules/admin/view/helpers/EnableElFinder.php":
6. У поданні IndexAction IndexController 'a модуля admin (за замовчуванням такі штуки розташовуються в "/application/modules/admin/view/scripts/index/index.phtml") пишемо наступне:
7. В основному шаблоні ( "/application/layouts/scripts/index.phtml") при цьому повинно бути щось типу такого (стандартний код для шаблонів ZF):
щось типу такого
Як це працює
Помічники виду необхідні для динамічного додавання необхідних елементів у вихідний html-код. Як видно, кожен наш помічник є нащадком класу Zend_View_Helper_Abstract. який реалізує інтерфейс, що дозволяє отримати доступ до глобального об'єкту Zend_View. який якраз і відповідає за вихідний html-код.
У кожному помічника ми звертаємося до стандартних помічникам виду (HeadScript Helper для додавання js-файлів і js-коду і HeadStyle Helper для додавання файлів стилю) через глобальний об'єкт Zend_View.
Якщо інформація була корисною для вас, ви можете підтримати сайт.
Помічники це звичайно добре.
Але не буде зайвим подивитися в код connector.php і змінити
$ Fm = new elFinder ($ opts);
$ Fm-> run ();
session_save_path (realpath (dirname (__ FILE__). # '/ .. / .. / .. / data / session / #')); // або куди ви зберігаєте свою сесію
session_start ();
if (isset ($ _ SESSION [# 'Zend_Auth #']))
$ Storage = $ _SESSION [# 'Zend_Auth #'] [# 'storage #'];
if ($ storage-> role == # 'Admin #')
$ Fm = new elFinder ($ opts);
$ Fm-> run ();
>
>