If you create a module from scratch, helper classes are not strictly necessary. I usually skip the creation until it is needed.
However , if any XML file uses the module attribute to indicate the translation module, this attribute must be enabled for a valid helper. For example, in this main file
<tabs> <catalog translate="label" module="catalog"> <label>Catalog</label> <sort_order>200</sort_order> </catalog> </tabs>
There module="catalog" . By specifying this attribute, the Magento system code that translates the label will look something like this.
Mage::helper('catalog')->__('Label');
So, removing the helper from the directory module will break the parts of Magento.
(The class attribute of a single part of the catalog automatically converted to Mage::helper('catalog/data') by the Magento system code)
This "translation assistance system.xml " function is used in many Magento XML files, not just system.xml (layout, widgets, etc.). In addition, Magento has several systems that will output and / or require an auxiliary module for translations (Access Control, external API system, etc.).
Long Story Short: if you are creating a module from scratch, feel free to leave an assistant until you start getting errors that Magento cannot create an assistant. Never remove an existing helper from a module, and if you want to make sure that you are 100% compatible with the assumptions that other people can make, always include the helper class Data.php .
source share