Onsdag, 24 april 2013 13:58

Sådan bygger du et modul til Joomla fra bunden - del 1

Skrevet af 
Sådan bygger du et modul til Joomla fra bunden - del 1 FruityScream

Jeg vil igennem to blog indlæg vise dig hvordan du nemt og hurtigt kan bygge dit helt eget Joomla modul. Vi starter først med et simpelt "Hello world", hvorefter vi udvider det med parametre og database forespørsler. 

 Jeg vil i disse to blog post bygge et modul, som jeg kalder Hej Verden. I korte træk vil dette module være bygget på to filer.

  • mod_hejverden.php
  • mod_hejverden.xml

mod_hejverden.xml styrer alle informationer omkring modulet. Dette er fx hvad navnet er, hvornår det er lavet, hvem der har lavet det, om der er oversættelser samt parametre. 

mod_hejverden.php styrer derimod alt det, som modulet skal vise. Det er den fil som behandler informationer fra databasen og andre ting.

0: Lav kaffen

Som det første skal du altid starte med at lave en god kop kaffe før arbejdet begynder, da vi lige skal have gjort din computer klar til programmering. Du kan downloade modulet nederst. (Udviklere er dovne, så ved du det)

Har du en kode editor?

Hvis nej, så download SublimeText. Det er min ynglings editor som både virker til mac, linux og windows.

Har du et ftp program?

Hvis nej, så download CyberDuck

1. Vi starter med at kode

Opret en mappe på dit skrivebord og kald den "mod_hejverden" (uden anførselstegn)

Inde i denne mappe opretter du fem filer og en mappe, som anvist nedenfor.

modul opsætning filer

Start med at åbne "mod_hejverden.php". I denne fil skal vi angive informationer omkring modulet. Jeg vil ikke gå i dybden med denne fil udover <files> og <config>. Ved <files> skal alle filer og mapper angives, som hører til modulet. Ved <config> skal alle parametre angives, som modulet skal bruge. (Der kommer en nærmere forklaring i næste indlæg).


Hej verden
Martin Kollerup
April 2013
Copyright (C) 2013 Joomlatutorials.dk
GNU/GPL v.2.0 or newer

 Denne email adresse bliver beskyttet mod spambots. Du skal have JavaScript aktiveret for at vise den.
 
http://joomlatutorials.dk
1.0.0


	mod_hejverden.php
	mod_hejverden.xml
	index.html
	tmpl



 Hvis du komprimerer mappen "mod_hejverden" er det nu muligt at installere det  i Joomla, men det vil dog ikke vise noget. Det skal vi lave om på. 

2. Modulet skal have indhold

Åben filen "hej_modverden.php".

I denne fil skal vi behandle de parametre som brugeren angiver i backend. Senere skal denne fil udvides meget, alt efter hvad du vil bruge dit modul til senere.

<?php
/**
 * Hej verden modul til Joomla
 * @package Joomla 2.5 / 3.0
 * @version 1.0.0
 * @copyright (C) 2013 Joomlatutorials.dk
 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL v.2
 * @link http://joomlatutorials.dk
 **/
//Denne linje skal være først i alle PHP filer. Det er for at man ikke kan få direkte adgang til filen.
defined('_JEXEC') or die;
/* 
Vi henter det ene parametre vi har oprettet i XML filen. ($params->get("visBesked","1"))
	Forklaring: 
		visBesked: Det er parametrens navn (som du har angivet i xml filen)
		0: Findes der ingen gemte variabled med navnet, bruges denne variable.
Resten af linjen kan beskrives med tekst:
	Hvis parametren == 1 så den rigtig ellers er den forkert.
*/
$visBesked	  = ($params->get("visBesked","1") == '1') ? true : false;
//Det vi gør her er at hente vores skabelon fil. Dvs. den fil hvor vi vælger hvad modulet skal vise
//Det er den fil som ligger under "tmpl/default.php"
require JModuleHelper::getLayoutPath('mod_hejverden', $params->get('layout', 'default'));

Jeg har gjort alt hvad jeg kan for at uddybe hvad jeg gør.

Åben filen "tmpl/default.php"

<?php
/**
 * Hej verden modul til Joomla
 * @package Joomla 2.5 / 3.0
 * @version 1.0.0
 * @copyright (C) 2013 Joomlatutorials.dk
 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL v.2
 * @link http://joomlatutorials.dk
 **/
//Denne linje skal være først i alle PHP filer. Det er for at man ikke kan få direkte adgang til filen.
defined('_JEXEC') or die;
//hvis $visBesked er true (1), så vises beskeden
if($visBesked){
	echo "Jeg siger hej til verden";
}
//Denne besked vises altid
echo "Jeg siger altid hej til verden.";

3. Vi skal prøve modulet

Nu zipper du mappen "mod_hejverden" og installere den via Joomla installer. Herefter tilgår du modulet  under Extensions -> "Modules" -> "Hej Verden". Placer modulet i en position hvorefter du aktivere det. Vises modulet ikke i første omgang, så tjek under "Menu Assignment". Her skal det sættes til at blive vist på alle sider.

4. Hvad bliver det næste?

I dette indlæg har jeg gået i dybden med det mest simple bag et modul. I næste omgang vil jeg bruge flere forskellige former for parametre og tilføje design i form af bootstrap og CSS. 

Download "Hej Verden" v.1.0.0

Læst 59909 gange Senest ændret Lørdag, 11 maj 2013 18:22
Martin Kollerup

Martin er en ung nørd, som elsker udfordringer. Han står bl.a. bag flere moduler til Joomla, samt er fast inventar i forummet. 

Skriv en kommentar

Sørg for du indtaster de påkrævede oplysninger (*).
HTML kode er ikke tilladt.