3 – Tutoriel de création de module Magento 1 : gérer la vue et le contrôleur

LE BLOCK DU MODULE

Le block est l’élément de code qui va vous permettre d’interagir entre votre  model et votre template.

<?php
class Valibus_Gestion_Block_Showblock extends Mage_Core_Block_Template
{
public function voirblock()
{
return "Mon block s'affiche correctement";
}
}

LE CONTROLER DU MODULE

Nous évitons ici l’affichage à l’aide d’un simple echo pour procéder au  chargement du layout.

<?php
class Valibus_Gestion_IndexController extends Mage_Core_Controller_Front_Action
{
public function indexAction()
{
$this->loadLayout();
$this->renderLayout();
}
public function autreAction()
{
echo 'autre methode du controller.';
}
}

LA CONFIGURATION DU MODULE

<?xml version="1.0"?>
<config>
<modules>
<Valibus_Gestion>
<version>1.0.0</version>
</Valibus_Gestion>
</modules>
<frontend>
<routers>
<plop>
<use>standard</use>
<args>
<module>Valibus_Gestion</module>
<frontName>gest</frontName>
</args>
</plop>
</routers>
<layout>
<updates>
<plop>
<file>gestion.xml</file>
</plop>
</updates>
</layout>
</frontend>
<global>
<blocks>
<gestion>
<class>Valibus_Gestion_Block</class>
</gestion>
</blocks>
</global>
</config>

LE TEMPLATE D’AFFICHAGE

<?php
echo $this->voirblock();
?>

LE LAYOUT

<layout version="0.1.0">
<plop_index_index>
<reference name="content">
<block type="gestion/showblock" name="afficher_monbloc" template="gestion/voir.phtml" />
</reference>
</plop_index_index>
</layout>

QUELQUES EXPLICATIONS

Maintenant que nous avons mis à jour notre code quelques explications s’imposent…

Tout d’abord, le contenu que nous avons généré ne s’affiche plus dans une page blanche, ceci grâce au layout qui lui indique de se placer dans l’emplacement content. Vous trouverez d’ailleurs dans le fichier template 3-colums.phtml:

<div class="col-main">
<php echo $this->getChildHtml('global_messages') ?>
<php echo $this->getChildHtml('content') ?>
</div>

Ce qui nous permet de voir que le l’élément fils ‘content’ est appelé par le template par défaut. vous mettre la ligne en commentaire et votre block disparaîtra.

Prochaine étape:  Interaction avec mysql.

Plutôt que d’apprendre par vous même, vous souhaitez faire appel à un professionnel du développement e-commerce sous magento? Découvrez notre service de  développeur magento.