Transcript
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