Joomla componenten bouwen met Component Creator

Post on 14-Dec-2014

438 views 1 download

description

Joomla componenten bouwen met Component Creator, voor Joomladagen 2014

Transcript of Joomla componenten bouwen met Component Creator

R.Kreijveld

Joomla component bouwen

met Component Creator

René Kreijveld

R.Kreijveld

Joomla Extensies• Componenten

• Modules

• Plugins

• Templates

• Taalbestanden

R.Kreijveld

Joomla Extensies• Op de JED (Joomla Extension Directory)

zijn heel veel extensies beschikbaar.

• En toch … soms zit die ene er niet bij die jouw gewenste functionaliteiten biedt of er is te veel of te weinig functionaliteit.

• En dus wil je zelf wat maken.

R.Kreijveld

Joomla Extensies• Indien volgens Joomla standaarden

gebouwd, dan volgens MVC.

• Wat is MVC?

R.Kreijveld

MVC• http://nl.wikipedia.org/wiki/Model-view-

controller-model

• MVC is een design pattern, dat het ontwerp van een toepassing opdeelt in 3 eenheden:

Model, View, Controller

R.Kreijveld

MVC

ControllerControllerControllerController

ViewViewViewView ModelModelModelModel

R.Kreijveld

R.Kreijveld

Een eigen component …• Dus als ik zelf een component wil

bouwen, moet ik een Controller, Models en Views bouwen …

• Voor frontend en backend …

• Met kennis van PHP, MySQL, HTML, CSS, Javascript en het Joomla framework …

R.Kreijveld

Da’s best PITTIG!Althans voor René Kreijveld … ;-)

R.Kreijveld

www.component-creator.com

R.Kreijveld

R.Kreijveld

Component Creator• Bouwt Joomla 2.5 of 3.x componenten

• Joomla/MVC/ACL standaarden

• Meertalig

• Direct installeerbaar

• Alle standaard Joomla opties op data

R.Kreijveld

Component Creator• Mogelijk om te werken met gerelateerde

data(1-to-many relaties)

• List en form view in backend

• List, detail en edit view in frontend

R.Kreijveld

Component Creator• Alles draait in de browser (online)

• Twee varianten:Gratis versie: componenten met 1 tabelBetaalde versie: ongelimiteerde tabellen

• Betaalde versie € 19,00 per maand (jaar)

• Kortingcode jd14nl geeft 20% korting

R.Kreijveld

Component Creator - Werkwijze1.Maak nieuw component, kies Joomla

versie (2.5/3.2)

2.Voeg tabel(len) of lege view(s) toe

3.Per tabel: bepaal backend en frontend views, voeg kolommen toe in de tabel

4.Genereer component

R.Kreijveld

R.Kreijveld

R.Kreijveld

R.Kreijveld

R.Kreijveld

R.Kreijveld

R.Kreijveld

Bouw voorbeeld component• com_ipfilter

• Functie: beheer IP-adressen per gebruiker.

• Doel: gebruiker mag alleen inloggen vanaf het gekoppelde IP-adres (plugin).

• Component is een backend component, geen frontend views.

R.Kreijveld

Datamodel#__users#__users idid namename usernameusername emailemail passwordpassword … …

#__users#__users idid namename usernameusername emailemail passwordpassword … …

#__ipfilter_i#__ipfilter_ipp idid orderingordering statestate checked_outchecked_out checked_out_timechecked_out_time created_bycreated_by useriduserid ipadresipadres errorerror

#__ipfilter_i#__ipfilter_ipp idid orderingordering statestate checked_outchecked_out checked_out_timechecked_out_time created_bycreated_by useriduserid ipadresipadres errorerror

R.Kreijveld

com_ipfilter - werking1.Gebruiker logt in met login/password

2.Ip-adres in database? ja: 3 nee: 4

3.Ip-adres gebruiker = Ip-adres in database?ja: verder naar reguliere inlogverwerking, 4nee: exit met foutmelding

4.Controle login/password

R.Kreijveld

com_ipfilter

Demo bouw componentDemo werking component

R.Kreijveld

Controle IP-adres bij login?• Er bestaat een Joomla authenticatie

plugin.

• Deze plugin controleert Joomla login gegevens.

• Kunnen we deze plugin hergebruiken?

R.Kreijveld

plg_authentication_joomlaKloon naar plg_authentication_joomla_ip

Aanpassen plg_authentication_joomla_ip

Installatie plg_authentication_joomla_ip

De-publiceer plg_authentication_joomla

Publiceer plg_authentication_joomla_ip

R.Kreijveld

Finale• Test login met geldig ip-adres.

• Test login met ongeldig ip-adres.

R.Kreijveld

ipfilter component & plugin

Download component en plugin via:

http://www.rkrweb.nl/cc_jd14nl_unzip1st.zip

R.Kreijveld

Component Creator - plus• Snel en gemakkelijk component bouwen

• Uitgebreide list en edit views in backend

• List en detail view in frontend

R.Kreijveld

Component Creator - min• Geen many-to-many relaties mogelijk

• Zoeken en filteren in frontend standaard niet aanwezig

• Geavanceerde zaken als onBeforeSave events zelf bouwen

• Geen export/import

R.Kreijveld

Component Creator

http://www.component-creator.com/nl/maak-een-

account-aan

R.Kreijveld

Dankjewel!• http://about.me/

renekreijveld

• Twitter @renekreijveld

• Kortingcode jd14nl: 20% geldig tot 31 maart 2014

• slideshare.com/renekreijveld