Сложи етикет Мнения: модул

Zend Framework На Оформление настройките на модула за - Follow Up

От , вторник, 16-ти февруари 2010 20:48

Като продължение на предишния ми пост е на модул базирани настройки за оформление за Zend Framework, съм актуализиран код, за да изискват по-малко конфигурация от преди (не че това изисква повече, че няколко реда в конфигурацията на вашата кандидатура!).
Продължи четене "Zend Framework Per настройките на модула Layout - Follow Up" »

Zend Framework на Модул настройки, базирани на

От , петък 1 януари 2010 22:40

Аз съм направил follow-на този пост, който изисква по-малко конфигурация, моля, вижте Модул Въз Layout - Zend Framework .

При използване на Zend рамка с модули, очевидно, че ако сте стартирали различни (под) сайтове разстояние същото заявление не е задължително да искат същите скриптове оформление за всяка част . Реших да отида със следната структура на сайта:

  / Приложение
     / Контролери
         ...
     / Модели
     / Модули
         / По подразбиране
             / Контролери
             / Оформление
                 / Скриптове
             / Изгледи
                 / Скриптове
         / AnotherModule
             ...
     / Скриптове

Проблемът е създаване на скриптове за оформление на модулен принцип. Отговорът дойде чрез използване на действие Helper. Създаване на оформления на модулен принцип включва три стъпки:

  1. Application.ini (или подобна конфигурация настройка):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ модули / администратор / оформления / скриптове"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ модули / по подразбиране / оформления / скриптове"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ модули / член / оформления / скриптове"
     affiliate.resources.layout.layoutPath = APPLICATION_PATH "/ модули / филиал / оформления / скриптове" 
  2. Създаване на вашия помощник за действие:
      <? PHP
     / **
      * Задава оформлението пътя на модулен принцип
      *
      * @ Автор Лойд Watkin <lloyd@evilprofessor.co.uk>
      * @ Тъй 01.01.2010
      * /
     клас Pro_Controller_Action_Helper_SetLayoutPath
         разширява Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Задава оформлението на път, на основата на модули
          * /
         публична функция preDispatch ()
         {
        	 $ Модул = $ това-> getRequest () -> getModuleName ();
    
    	     ако ($ Bootstrap = $ това-> getActionController ()
    	                        -> GetInvokeArg (Bootstrap ")) {
    
    	         $ Довереник = $ Bootstrap-> getOptions ();
    
    	         ако (isset ($ конфиг [$ модул] ['ресурси'] ['оформление'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  $ Конфиг [модул] ['ресурси'] ['оформление'] ['layoutPath "];
    	             $ Това-> getActionController ()
    	                  -> GetHelper ("оформление")
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. И накрая boostrap помощник за действие:
      ...
         / **
          * Задава оформлението скриптове на на модулен принцип
          * /
         Функция за защита _initLayoutHelper ()
    	 {
    	     $ Това-> Bootstrap ("frontController");
    	     $ Оформление = Zend_Controller_Action_HelperBroker: addHelper (
    	         ново Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 












"Панорама" Тема чрез Themocracy

9 посетители на линия
6 гости, 3 ботове, 0 потребители
Макс посетители днес: 17 в 04:02 ч. UTC
Този месец: 19 19-08-2011 06:09 ч. UTC
Тази година: 130 в 28-03-2011 22:40 UTC
През цялото време: 130 в 28-03-2011 22:40 UTC