
Mahara est un jeune CMS qui propose des fonctionnalités intéressantes : création d’un portfolio, de groupes, d’institutions … bref un petit réseau social.
Malgré tout, ce dernier s’entoure d’une très petite communauté et propose une documentation quasi inexistante.
Ce que je vous propose aujourd’hui, c’est de voir comment on peut créer un petit sideblock (qui correspond à un widget de WordPress) contenant un « Hello World ».
Très important : Mahara utilise le langage Smarty pour la vue et le php pour ses requêtes.
On va utiliser le dossier « bonus » local pour créer notre petit block.
Dans local/lib.php :
<?php function local_sideblocks_update(&$SIDEBLOCKS) { $hello = 'Hello World'; // Initiation of the block if (defined('MENUITEM') && MENUITEM != '') { /*================================ Hello Test ================================*/ $SIDEBLOCKS[] = array( 'name' => 'hello', 'id' => 'sb-hello', 'weight' => 20, 'data' => array('hello' => $hello), ); } } ?>
Avec cette fonction j’ajoute à la liste des sideblocks un nouveau block qui s’appelle hello, avec l’identifiant ‘sb-hello’, dans la position 20 (au-dessus des autres blocks déjà présents dans le site) et, le plus important, je vais dire que la valeur hello contient la variable php $hello.
Maintenant occupons-nous de la vue.
Dans theme/raw/templates/sideblocks/hello.tpl :
{if $sbdata.hello} <div class="panel panel-default"> <h3 class="panel-heading"> Hello </h3> {$sbdata.hello} </div> {/if}
En gros : si $sbdata.hello existe (qui correspond aux datas de la partie php) alors tu m’affiches la variable qui contient la valeur « Hello world ».
Ici vous trouvez l’ensemble du code.
Très intéressant, merci !