Sabemos que é uma boa prática incluir arquivos JavaScript na parte inferior da página, e o auxiliar HeadScript é muito útil para gerenciar todas as chamadas e arquivos de scripts Java da sua visualização, no entanto, há casos em que você deseja carregar scripts no cabeçalho (prefixo livre, html5 shiv, etc.) e os restantes na parte inferior do seu layout. Simplesmente estender o auxiliar HeadScript não é suficiente, você precisará alterar a chave de registro e a chamada de função padrão.
FootScript.php
<?php
class Zend_View_Helper_FootScript extends Zend_View_Helper_HeadScript{
/**
* Registry key for placeholder
* @var string
*/
protected $_regKey = 'Zend_View_Helper_FootScript';
/**
* Return footScript object
*
* Returns footScript helper object; optionally, allows specifying a script
* or script file to include.
*
* @param string $mode Script or file
* @param string $spec Script/url
* @param string $placement Append, prepend, or set
* @param array $attrs Array of script attributes
* @param string $type Script type and/or array of script attributes
* @return Zend_View_Helper_FootScript
*/
public function footScript($mode = Zend_View_Helper_HeadScript::FILE, $spec = null, $placement = 'APPEND', array $attrs = array(), $type = 'text/javascript'){
return $this->headScript($mode,$spec,$placement,$attrs,$type);
}
}
Layout.phtml de exemplo
<?php echo $this->doctype(); ?>
<html lang="en">
<head>
<meta charset="utf-8">
<?php echo $this->headMeta().$this->headTitle().$this->headStyle().$this->headLink().$this->headScript();?>
</head>
<body>
<?php echo $this->layout()->content; ?>
<?php echo $this->footScript();?>
</body>
</html>