What is a Helper ?

Create your own Helper

As you are now used to, it starts by declaring it in the config.xml of your plugin, do that in <global> and after </blocks>


<helpers>
    <test>
        <class>Pfay_Test_Helper</class>
    </test>
</helpers>

What is a Helper

As the name implies a « helper » is something that is right for you ! It is an object that will contain practical functions for you and you can call it from anywhere, you just load your helper to use it. For example:

$helper = Mage::helper(‘monhelper’);

Note that this call is actually equivalent to:

$helper = Mage::helper(‘monhelper/data’);
Indeed, it is the default helper « data » which is called.

Call helper of custom module

$helper = Mage::helper(‘modulename/helpername’);

Create your own Helper

As you are now used to, it starts by declaring it in the config.xml of your plugin, do that in <global> and after </blocks>


<helpers>
    <test>
        <class>Pfay_Test_Helper</class>
    </test>
</helpers>

Then creates the folder and the file app/code/local/Pfay/Test/Helper/data.php function wich will contains the function bytwo($ nbr) with a number as an argument and returns that number multiplied by two. A helper is an object that extends the core class Mage_Core_Helper_Abstract.

class Pfay_Test_Helper_Data extends Mage_Core_Helper_Abstract{
public function bytwo($nbr){
return $nbr*2;
}
}

Now in/app/code/local/Pfay/Test/Block/monblock.php we change the function by:

</div>
class Pfay_Test_Block_Monblock extends Mage_Core_Block_Template
{
public function methodblock()
{
$helper = Mage::helper('test');
return '2*2 = '.$helper->bytwo(2);
}
}

Now when we go on yoursite.com/index.php/test/index/, we see that it works!

Here we are ! you understand how to create a helper on magento, I invite you to practice, the only way to improve yourself ;) If you have any questions, feel free to leave a comment.

You want to help me? Share this article on twitter, do an article on this series of tutorials on your blog, tell your friends, participate in the comments and return to this site;)

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s