Зенд Фрамеворк-Модуле по бази подешавања
Направио сам Фолловуп на овај пост који захтева мање конфигурацију, погледајте модула Басед Лаиоут - Зенд Фрамеворк .
Када користите Зенд оквир модула, са њеним очигледним да ако користите разне (под-) локације ван исте апликације си не нужно желе исте скрипте распоред за сваки део. Одлучио сам да идем са следећом структуром сајта:
/ Примена / Контролери ... / Модела / Модула / Дефаулт / Контролери / Распоред / Скрипте / Виевс / Скрипте / АнотхерМодуле ... / Скрипте
Проблем је постављање распореда скрипте на по-модула основи. Одговор је стигао кроз коришћењем Ацтион Хелпер. Подешавање се распореде на основу по-модула обухвата три корака:
- Апплицатион.ини (или слична конфигурација подешавање):
админ.ресоурцес.лаиоут.лаиоутПатх АППЛИЦАТИОН_ПАТХ = "/ модулес / админ / распореди / писмо" дефаулт.ресоурцес.лаиоут.лаиоутПатх АППЛИЦАТИОН_ПАТХ = "/ модулес / дефаулт / распореди / писмо" мембер.ресоурцес.лаиоут.лаиоутПатх АППЛИЦАТИОН_ПАТХ = "/ модула / члан / распореди / писмо "аффилиате.ресоурцес.лаиоут.лаиоутПатх АППЛИЦАТИОН_ПАТХ =" / модулес / аффилиате / Лаиоутс / писмо " - Креирајте ваш помоћник Акциони:
<ПХП? / ** * Поставља распореда на путању модула по основу * * @ Аутор Лојд Ваткин <ллоид@евилпрофессор.цо.ук> * @ Јер 2010-01-01 * / класа Про_Цонтроллер_Ацтион_Хелпер_СетЛаиоутПатх проширује Зенд_Цонтроллер_Ацтион_Хелпер_Абстрацт { / ** * Сетови распоред пут заснован на модулу * / јавну функцију преДиспатцх () { Модул $ = $ тхис-> гетРекуест () -> гетМодулеНаме (); иф ($ боотстрап = $ тхис-> гетАцтионЦонтроллер () -> ГетИнвокеАрг ('боотстрап')) { $ $ Модулес = дизања-> гетОптионс (); иф (иссет ($ цонфиг [$ модул] ['ресурси'] ['распоред'] ['лаиоутПатх'])) { $ = ЛаиоутПатх $ Цонфиг [$ модул] ['ресурси'] ['распоред'] ['лаиоутПатх']; $ Тхис-> гетАцтионЦонтроллер () -> ГетХелпер ('распоред') -> СетЛаиоутПатх ($ лаиоутПатх); } } } }
- И на крају боострап помоћни акције:
... / ** * Поставља се распоред скрипте на основу модула по * / заштићени функција _инитЛаиоутХелпер () { $ Тхис-> боотстрап ('фронтЦонтроллер'); Распоред $ = Зенд_Цонтроллер_Ацтион_ХелперБрокер :: аддХелпер ( Нови Про_Цонтроллер_Ацтион_Хелпер_СетЛаиоутПатх ()); } ...

















































