30
Extensies maken voor Joomla! Peter van Westen @NoNumber_nl nonumber.nl

Joomla!dagen 2011: Extensies maken voor Joomla!

Embed Size (px)

DESCRIPTION

De grote kracht van Joomla! Is de grote hoeveelheid beschikbare extensies. Voor bijna alles wat je wil is wel een extensie... bijna...Deze presentatie zal je inzicht geven om met een basis php en (x)html kennis zelf extensies te gaan ontwikkelen. De aandacht zal voornamelijk op plugins en modules liggen.Ook zal je leren hoe je met een aantal al beschikbare extensies je Joomla! website naar je hand kan zetten zonder zelf extensies te hoeven schrijven.

Citation preview

Page 1: Joomla!dagen 2011: Extensies maken voor Joomla!

Extensies maken voor Joomla!

Peter van Westen

@NoNumber_nl

nonumber.nl

Page 2: Joomla!dagen 2011: Extensies maken voor Joomla!

Extensies maken voor Joomla!1.5

Peter van Westen

@NoNumber_nl

nonumber.nl

Page 3: Joomla!dagen 2011: Extensies maken voor Joomla!

Wie ben ik?

• Peter van Westen

• Programmeur… geen spreker

• 31

• Getrouwd

Page 4: Joomla!dagen 2011: Extensies maken voor Joomla!

Wie ben ik?

Page 5: Joomla!dagen 2011: Extensies maken voor Joomla!

Extensies• Add to Menu

• AdminBar Docker

• Advanced Module Manager

• Articles Anywhere

• Better Preview

• Cache Cleaner

• CDN for Joomla!

• Content Templater

• CustoMenu

• DB Replacer

• Modalizer

• Modules Anywhere

• NoNumber! Extension Manager

• ReReplacer

• Slider

• Snippets

• Sourcerer

• Tabber

• Timed Styles

• What? Nothing!

Page 6: Joomla!dagen 2011: Extensies maken voor Joomla!

Wat gaan we bespreken?1. MVC model

2. Modules maken

3. Plugins maken

4. Modules/plugins maken m.b.v. bestaande extensies

5. Vragen…

Page 7: Joomla!dagen 2011: Extensies maken voor Joomla!

MVC model

Model

View

Controller

1

Page 8: Joomla!dagen 2011: Extensies maken voor Joomla!

CMV model

Controller

Model

View

1

Page 9: Joomla!dagen 2011: Extensies maken voor Joomla!

Controller

Chef

1. MVC model

Page 10: Joomla!dagen 2011: Extensies maken voor Joomla!

Model

Magazijn

1. MVC model

Page 11: Joomla!dagen 2011: Extensies maken voor Joomla!

View

Vormgever

1. MVC model

Page 12: Joomla!dagen 2011: Extensies maken voor Joomla!

Controller - Model - View

Magazijn VormgeverChef

1. MVC model

Page 13: Joomla!dagen 2011: Extensies maken voor Joomla!

Modules maken

2

Page 14: Joomla!dagen 2011: Extensies maken voor Joomla!

Wat zijn modules?• Module = widget

• Altijd geplaatst in module posities

(behalve met Modules Anywhere)

2. Modules maken

Page 15: Joomla!dagen 2011: Extensies maken voor Joomla!

Wat zijn modules?• Afhankelijk van het aktieve Menu item (Itemid)

(behalve met Advanced Module Manager of MetaMod)

2. Modules maken

Page 16: Joomla!dagen 2011: Extensies maken voor Joomla!

MVC model

helper.php tmplmod_x.php

Chef VormgeverMagazijn

2. Modules maken

Page 17: Joomla!dagen 2011: Extensies maken voor Joomla!

BestandenBestanden kopieren van bestaande module

mod_wrapper / mod_latestarticlesmod_x.xml

mod_x.php

helper.php

index.html

<tmpl>

default.php

index.html

2. Modules maken

Page 18: Joomla!dagen 2011: Extensies maken voor Joomla!

mod_x.php<?php/** * Module X */ // no direct accessdefined( '_JEXEC' ) or die( 'Restricted access' ); // Include the syndicate functions only oncerequire_once( dirname(__FILE__).DS.'helper.php' );

$layout = JModuleHelper::getLayoutPath( 'mod_x' );require( $layout );?>

2. Modules maken

Page 19: Joomla!dagen 2011: Extensies maken voor Joomla!

helper.php<?php/** * Module X - Helper */ // no direct accessdefined( '_JEXEC' ) or die( 'Restricted access' ); class modXHelper{ ...}

2. Modules maken

Page 20: Joomla!dagen 2011: Extensies maken voor Joomla!

tmp/default.php<?php/** * Module X – Default Template */ // no direct accessdefined( '_JEXEC' ) or die( 'Restricted access' );?><!– HTML -->

2. Modules maken

Page 21: Joomla!dagen 2011: Extensies maken voor Joomla!

Module maken

Module : Artikeltje• Plaats de titel en intro text van een artikel op basis van artikel id

nummer.

2. Modules maken

Page 22: Joomla!dagen 2011: Extensies maken voor Joomla!

Module maken

Voorbeeld:http://www.nonumber.nl/files/jd11nl/ mod_artikeltje.zip

2. Modules maken

Page 23: Joomla!dagen 2011: Extensies maken voor Joomla!

Plugins maken

3

Page 24: Joomla!dagen 2011: Extensies maken voor Joomla!

Wat zijn plugins?• Hebben effect op website

• Worden uitgevoerd a.d.h.v. ‘triggers’

• content / system / etc.

3. Plugins maken

Page 25: Joomla!dagen 2011: Extensies maken voor Joomla!

MVC model Chef VormgeverMagazijn

3. Plugins maken

Page 26: Joomla!dagen 2011: Extensies maken voor Joomla!

MVC model Chef VormgeverMagazijn

3. Plugins maken

Page 27: Joomla!dagen 2011: Extensies maken voor Joomla!

BestandenBestanden kopieren van bestaande plugin

x.xml

x.php

<x>

...

3. Plugins maken

Page 28: Joomla!dagen 2011: Extensies maken voor Joomla!

Plugin maken

Plugin: Artikeltje• Plaats de titel en intro text van een artikel op basis van artikel id

nummer.

• Syntax: {artikeltje 123}

3. Plugins maken

Page 29: Joomla!dagen 2011: Extensies maken voor Joomla!

Plugin maken

Voorbeeld:http://www.nonumber.nl/files/jd11nl/ plg_artikeltje.zip

3. Plugins maken

Page 30: Joomla!dagen 2011: Extensies maken voor Joomla!

Modules/plugins makenm.b.v. bestaande extensies

ReReplacerhttp://www.nonumber.nl/rereplacer

Sourcererhttp://www.nonumber.nl/sourcerer

4