Sto provando a caricare specifici stili/risorse di script per un modulo specifico all'interno della mia applicazione.Bootstrapping di stili/script specifici di moduli in Zend Framework
Qui è la mia struttura dell'applicazione:
-application
-configs
-controllers
-forms
-layouts
-models
-modules
-admin
-configs
-controllers
-models
-views
-Bootstrap.php
-views
-Bootstrap.php
Il problema che sto avendo è: gli stili e script sto di carico per i headLink()
e headScript
in /application/modules/admin/Bootstrap.php
sono anche essere caricati in mio controller/azioni che sono non nel modulo admin
. Qui sono i miei Bootstrap.php
's
/application/Bootstrap.php
:
protected function _initDoctype()
{
$this->_logger->info('Bootstrap ' . __METHOD__);
//init the view
$this->bootstrap('view');
$view = $this->getResource('view');
$view->doctype('XHTML1_STRICT');
//Set title and separator
$view->headTitle('Sunny Rose Photography')
->setSeparator(' | ');
//Load global stylesheets
$view->headLink()->appendStylesheet('/styles/styles_main.css')
->headlink()->appendStylesheet('/scripts/jquery-ui-1.8.17/themes/base/jquery-ui.css');
//Load Scripts
$view->headScript()->prependFile('/scripts/jquery-1.7.1/jquery-1.7.1.js')
->headScript()->appendFile('/scripts/jquery-ui-1.8.17/ui/minified/jquery-ui.min.js')
->headScript()->appendFile('/scripts/gallery.js')
->headScript()->appendFile('/scripts/scripts_main.js');
}
/application/modules/admin/Bootstrap.php
:
protected function _initDoctype()
{
$this->bootstrap('view');
$view = $this->getResource('view');
$view->headLink()->appendStylesheet('/styles/admin/styles_admin.css');
$view->headScript()->appendFile('/scripts/admin/scripts_admin.js');
}
posso vedere come o forse perché si sta facendo: perché sto ricevendo la vista dal caricatore principale (?). La mia domanda è: come si caricano fogli di stile specifici e/o file di script?
Mi scuso se questa è una domanda doppia, ho cercato varie diciture del titolo della domanda e non ho trovato nulla di conclusivo.
Grazie, Ken
Come utilizzare l'uso di 'headLink' ecc in questo modo, poiché questi devono essere richiamati su' view'. vale a dire: $ this-> bootstrap ('view'); $ view = $ this-> getResource ('view'); $ view-> headLink() -> appendStylesheet (''); $ view-> headScript() -> appendFile (''); ' – Ken
$ this -> _ layout-> getView(); $ this -> _ layout è l'istanza di Zend_Layout disponibile dalla classe genitore –
Penso che sto iniziando a prenderlo - potrei semplicemente andare su Zend/Layout/Controller/Plugin/Layout.php per vedere quali metodi ha. Grazie mille. – Ken