Benim görünümünde bir Zend_Nagivation
örneğini oluşturma, varsayılan olarak çapa etiketleri id bir çizgi izledi görünümü yardımcısı öneki ile atanmış, ve sonra sayfanın kimliği var.
Sayfa 1 çapası kimliği örnekleri (hepsi aynı Zend_Nagivation
örneğini kullanarak):
Zend_View_Helper_Navigation_Menu
= "menu-1"Zend_View_Helper_Navigation_Breadcrumbs
= "kırıntıları-1"My_View_Helper_Navigation_MyMenu
= "MyMenu-1"
Bu, çoğu durumda mükemmel, ama elle bu önek ayarlamak istiyorum, ve bunu yapmak için bir yol bulamıyorum.
Solution
Öneki belirterek aşağıdaki kodu ekleyerek başarılı ve daha sonra render setIdPrefix()
zaman çağrı yapılabilir:
class My_View_Helper_Navigation_MyMenu extends Zend_View_Helper_Navigation_Menu
{
protected $_idPrefix = null;
/**
* Set the id prefix to use for _normalizeId()
*
* @param string $prefix
* @return My_View_Helper_Navigation_MyMenu
*/
public function setIdPrefix($prefix)
{
if (is_string($prefix)) {
$this->_idPrefix = $prefix;
}
return $this;
}
/**
* Use the id prefix specified or proxy to the parent
*
* @param string $value
* @return string
*/
protected function _normalizeId($value)
{
if (is_null($this->_idPrefix)) {
return parent::_normalizeId($value);
} else {
return $this->_idPrefix . '-' . $value;
}
}
}