Создание пользовательского помощника в модуле

magento.stackexchange https://magento.stackexchange.com/questions/1200

  •  16-10-2019
  •  | 
  •  

Вопрос

Я сделал новый модуль под названием test_helper И я хочу создать вспомогательный класс в этом модуле, чтобы я мог добавить пользовательские функции, которые можно назвать по всему сайту.

Однако я не могу найти никаких примеров того, как это сделать. Я предполагаю, что мне нужно создать дополнительный XML в конфигурации и рекламу еще одного файла, который расширяет базового помощника, но мне не повезло найти пример для строительства.

Это было полезно?

Решение

Ваше соглашение о именовании модуля довольно запутанно - вы называете сам модуль помощником? Для объяснения я предпочитаю позвонить в ваш модуль myname_mymodule

В вашем модуле ./app/code/community/MyName/MyModule/etc/config.xml, внутри <global> теги

<helpers>
  <mymodule>
      <class>MyName_MyModule_Helper</class>
  </mymodule>
</helpers>

Затем создайте файл ./app/code/community/MyName/MyModule/Helper/Data.php

<?php

class MyName_MyModule_Helper_Data extends Mage_Core_Helper_Abstract{

}

Затем, чтобы назвать этот модуль, вы будете использовать

$helper = Mage::helper('mymodule');

Другие советы

Добавить помощника каталога в каталог расширения и в файле Data.php

class Test_Helper_Helper_Data extends Mage_Core_Helper_Abstract {

  public function yourFunction() {
     ...
     your code here
     ...
  } 

}

Теперь вы можете позвонить через это через

Mage::helper('test/helper')->yourFunction();

Также добавьте следующее в свой config.xml

...
<global>
    ...
    <helpers>
        <[extension name]>
            <class>[Namespace]_[extension name]_Helper</class>
        </[extension name]>
    </helpers>
    ...
</global>
...
Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top