2015-03-07 3 views
0

Попытка отладки моего вспомогательного помощника Magento (с использованием 1.9CE btw) Mag - это имя моего настраиваемого модуля.Magento Custom Helper не работает, почему?

/code/local/Mag/Layout/etc/config.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
     <Mag_Layout> 
      <version>1.0</version> 
     </Mag_Layout> 
    </modules> 
    <global> 
     <page> 
      <layouts> 
       <Mag_HomeLayout translate="label"> 
        <label>Static (Menu Left)</label> 
        <template>page/static-left.phtml</template> 
        <layout_handle>Static </layout_handle> 
       </Mag_HomeLayout> 
      </layouts> 
     </page> 
     <helpers> 
      <nav> 
       Mag_Nav_Helper 
      </nav> 
     </helpers> 
    </global> 
</config> 

/code/local/Mag/Nav/Data.php

<?php 

class Mag_Nav_Helper_Data extends Mage_Core_Helper_Abstract 
{ 
    // Navigation helper 
    public function getNavigation() 
    { 
     echo "here"; exit; 
     echo "FOUND". $url; 
     exit; 
    } 
} 

тогда в любой ПЛАН, который я пытаюсь назвать: Нравится так:

<?php 

$helper = Mage::helper('nav'); 
$helper->getNavigation(); 
?> 

Ожидая, что это вызовет мой пользовательский метод помощника, но это не так, Что я здесь вижу? Спасибо!

EDIT: Будет ли также простой способ вызова помощников из статических блоков?

ответ

1

Вероятно, проблема с оговоркой/именованием. я хотел бы сделать все имена в модуле форме:

<?xml version="1.0"?> 
<config> 
    <modules> 
     <Mag_Nav> 
      <version>0.1.0</version> 
     </Mag_Nav> 
    </modules> 
    <global> 
     <helpers> 
      <mag_nav> 
       <class>Mag_Nav_Helper</class> 
      </mag_nav> 
     </helpers> 
    </global> 
</config> 

Использование:

$oHelper= Mage::helper('mag_nav'); 

Не забудьте редактировать свои приложения/и т.д./местные/модули/Mag_Nav.xml

Смежные вопросы