2012-01-09 5 views
0

Я до сих пор очень новичок в Zend Framework, и я застрял в создании плагина. Я хотел бы создать боковую панель для отображения статистики посетителей, которая должна быть видимой на всех страницах. Поэтому я решил создать плагин и интегрировать его в свой файл макета. У меня уже есть плагин там, называемый Application_Plugin_CategoriesNavigationКак зарегистрировать плагин в Zend Framework application.ini?

Мой Plugins сидит под приложения/плагинов/sidebar.php приложения/плагинов/CategoriesNavigation

В моей application.ini, я поступил следующим образом:

application.ini 
resources.frontController.plugins.categoriesnavigation = "Application_Plugin_CategoriesNavigation" 
resources.frontController.plugins.sidebar = "Application_Plugin_Sidebar" 

My Plugin Class прямо сейчас

//My Plugin Class: 
class Application_Plugin_Sidebar extends Zend_Controller_Plugin_Abstract 
{ 
    public function preDispatch(Zend_Controller_Request_Abstract $request) 
    {  
    echo "Just a test"; 
    } 
} 

U nfotunately я получаю следующее сообщение об ошибке:

Uncaught исключения «Zend_Loader_PluginLoader_Exception» с сообщением «Plugin по имени„Sidebar“не был найден в реестре; используемые пути: Zend_View_Helper_Navigation_: Zend/View/Helper/Навигация/ ZendX_JQuery_View_Helper_: ZendX/JQuery/View/Helper/ Zend_View_Helper_:

Что я делаю неправильно? Плагин навигации работает отлично и выглядит одинаково, но почему он не работает со вторым плагином?

Любая помощь оценена!

ответ

0

попробуйте добавить это к вашей конфигурации:

appnamespace    = "Application" 
+0

Спасибо большое, но у меня это уже было в application.ini, и он ничего не изменил. Любая другая идея, что это может быть? Я интегрирую jQuery в файл boostrap, может ли это быть причиной? Но почему другой плагин, чем работает? – Luka

+0

Я такой идиот ... Я назвал это неправильным способом ... – Luka

+0

Хе-хе, это была очень странная проблема. Рад, что это сработало! – kingdaemon

-1

Я такой идиот, моя ошибка была в том, как я назвал его в файл макета. Я использовал echo $ this-> sidebar(); , но это вызывает ошибку. Чтобы вызвать плагин в файле макета, который вы должны использовать:

<?php echo $this->layout()->sidebar; ?> 

Очень жаль эту глупую ошибку.

+1

Вы смешиваете плагины контроллера с помощниками вида, что делает ваш вопрос и ответ очень запутанным. – Pieter

Смежные вопросы