ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
The power of Joomla!
Rick Spaan
Marketing & Internet Solutions
Rick Spaan
• Eigenaar R2H Marketing & Internet Solutions
• Frontend developer
• Member Joomla! Certfication Team
• JLP (Joomla! Learning Partner)
• Joomla! Certified Administrator
• Joomla! Project Contributor
• Pizza Bugs & Fun
Wat is Joomla!?
Joomla! is een award-winning content management system
Fork van Mambo
Sinds 22 september 2005 (Release Joomla! 1.0)
Open Source en Full Community Driven
65.000.000 keer gedownload
https://github.com/joomla
Waarom Joomla!?
MVC Framework as basis met zeer goede API
Backward compatible vanaf 2.5.x
PHP7.x
Stabiel, veilig en snel
Gewoon omdat het goed is!
Het blijft een kwestie van smaak!
Componenten
Modules
Plugins
Templates
De structuur van Joomla!
Gebruikers
Talen
• Basisfunctionaliteit van het CMS
• Direct gekoppeld aan menu items
• Worden veelal gebruikt om te beheren (artikelen, categorieën,
gebruikers)
• Er wordt altijd een component geladen
Belangrijkste componenten
• com_content
• com_users
• com_contact
• com_tags
Componenten
• Weergave van component-data of eigen module-data
• Kunnen op elke modulepositie neergezet worden
• Welke posities aanwezig zijn is afhankelijk van de template
• Kunnen aan menu items gekoppeld worden
Belangrijke modules
• mod_menu
• mod_custom
• mod_login
(Adv. module manager van Peter van Westen – www.regularlabs.com)
Modules
• Voegen extra functionaliteiten toe
• Output is vaak niet direct zichtbaar
• Kunnen bijna alle taken vervullen in het systeem
• Werken op basis van triggers in het systeem
• Code injecteren of vervangen
Belangrijke plugins
• Captcha
• Editors
Plugins
• Verzorgen de weergave
• De template bestaat uit component gedeelte en module posities
• Elk HTML design kan worden omgezet naar een Joomla! template
• Meerdere templates op een site mogelijk
• Veel gratis en commerciële templates
• joomlashine.com
• joostrap.com
• gavick.com
Templates (theme)
Frontend indeling
Een website beheren – Basis structuur
Artikel 1
Artikel 2
Artikel 3
Artikel 4
Artikel 5
Artikel 6
Categorie 1
Categorie 1a
Categorie 1b
Menu item 1 – categorie(s) blog layout (home page)
Menu item 2 – Single article
Custom HTML module
Breadcrumbs module
Menu
Categories
Artikelen
• Er zijn veel instellingen mogelijk (Via de opties rechts boven in
het component). De instellingen worden overerft.
1. Globale instellingen (Global settings – Articles)
2. Individueel artikel instellingen (Options tab in article)
3. Menu item instellingen (Options tab in Menu)
Algemene instellingen
1 2 3
Via Componenten - Artikelen
Via de Configuratie
Maar wanneer komt nu de power???
Voor de eindgebruiker
• Meertaligheid
• Groot standaard aantal modules
• Tagging system
• Geavanceerd zoeken ik alle content (Search / Finder)
• Categorie nesting om content te sorteren
• Geavanceerd filteren in de backend voor eenvoudig beheer
• ACL (Access control list / Rechtenbeheer)
• Versiebeheer
• Alles voor SEO
• RSS integratie (Creëren en lezen)
• Veel shotcuts
• Volledige controle over blog layouts en lijsten
• Single click updates
• Makkelijk uitbreidbaar met veel krachtige extensies
• 2 Factor Authentication / Captcha on forms / e-mail cloak
• Enzovoort…
Joomla! - Out of de box compleet!
• Eenvoudig template systeem
• MVC framework (Design pattern Modal View Controller)
• Template overrides (core output aanpassen)
• Veel libraries al geïntegreerd (Zeer uitgebreide API)
• Github
• JFacebook / JLinkedin / Jgoogle / Jtwitter / Jopenstreetmap
• HTTP Transfers
• Stream file I/O
• Extract ZIP / TAR
• Image resizing and manipulation
• LESS / SASS compiler
• Microdata
• CLI
Joomla! hidden secrets - Nicholas Dionysopoulos
https://www.youtube.com/watch?v=_7fhtYfsU-w ()
Voor de developer
De kracht is ook de valkuil!!!
Gelukkig is er ACL (Access control list)
Controle over weergave in de frontend en backend voor:
Componenten / Modules / Inhoud / Menu items
(ACL manager van Sander Potjer / www.aclmanager.net)
ACL verschil tussen Super Administrator / Manager
Zelf aan de slag – Een template maken
Joomla! Template design
Niet zo moeilijk als het lijkt…
Basiskennis van PHP / HTML / CSS vereist
Eigen template 1 – templateDetails.xml
Creëer een folder in:
tempates/ met de naam myfirsttemplate
Bestanden in mappen aanmaken:
myfirsttemplate/
* css/
** template.css
* images/
** testimage.jpg
* index.php
* templateDetails.xml
Maak een ZIP file van de bestanden of
gebruik de discover functie in Joomla! om
de template te installeren.
<?xml version="1.0" encoding="utf-8"?>
<extension version="2.5" type="template">
<name>myfirsttemplate</name>
<creationDate>25-01-2017</creationDate>
<author>Rick Spaan</author>
<authorEmail>rick@r2h.nl</authorEmail>
<authorUrl>http://www.r2h.nl</authorUrl>
<copyright>Rick Spaan – R2H</copyright>
<license>GNU/GPL</license>
<version>1.0.0</version>
<description>My First template Project</description>
<files>
<filename>index.php</filename>
<filename>templateDetails.xml</filename>
<folder>images</folder>
<folder>css</folder>
</files>
<positions>
<position>top</position>
<position>footer</position>
</positions>
</extension>
Voorwaarde om module positie:
<?php if ($this->countModules(‘top')) : ?>
<div class="slideshow">
<jdoc:include type="modules" name=“top" style=“xhtml" />
</div>
<?php endif; ?>
Afbeelding uit de /images folder van de template:
<img src=/slideshow/the-power-of-joomla/71456214/"<?php echo $this->baseurl; ?>/templates/<?php echo $this->template; ?>/images/testimage.jpg"
alt="Custom image" class="customImage" />
https://docs.joomla.org/Creating_a_basic_Joomla!_template/nl
Eigen template 2 – index.php
• Gebruik zo weinig mogelijk extensies
• Gebruik kwalitatief goede extensies
• Kies een goede template als basis
• Gebruik overrides voor aanpassingen (stick to the core)
• Zorg voor goede documentatie voor speciale instellingen
(Module class suffix en overrides) en begeleid de klant in het
leerproces.
• Gebruik ACL om het de klant makkelijk te maken
Gratis Joomla! testen of een eigen Joomla! website? Ja dat kan!
• https://www.joomla.com/ (life time)
• https://demo.joomla.org/ (90 dagen)
Tips
Joomla! 3.7 New Features and improvements
Te veel om op te noemen…
Custom fields
Eigen velden toevoegen aan alle content types
New 3.7 Features
Verwijderen van de ID’s in de URL:
Van: website.com/14-sample-data-articles/75-my-first-joomla-3-7-article
Naar: website.com/sample-data-articles/my-first-joomla-3-7-article
Zichtbaarheid standaard instellingen
New 3.7 Features
Content aanmaken via menu item
New 3.7 Features
Content language wordt automatisch aangemaakt bij installatie taal
Must have extensions
• JCE – Joomla! content Editor (Editor) Free / Commercial
• Advanced Module manager (Module management) Free / Commercial
• Akeeba backup (Backup and restore) Free / Commercial
• RSform (Forms) Commercial | RScontact (Contact form) Free
• AcyMailing (Newsletters) Free / Commercial
• Hikashop (Webshop) Free / Commercial
• Easyblog (Blogging) Commercial
• Osmap (Sitemap) Free / Commercial
• AdminExile (Admin URL security / Anti brute force hacking) Free
• SIGE (Image gallery plugin) Free
• DJ image ºÝºÝߣr (ºÝºÝߣshow) Free
Waar moet ik beginnen?
• www.joomla.org (Joomla! website)
• http://training.joomla.org (video tutorials)
• http://docs.joomla.org (Documentation site)
• https://community.joomla.org/user-groups.html (User Groups)
• https://www.joomlacommunity.nl/agenda (Alle Joomla! evenementen)
• @RickR2H
• https://nl.linkedin.com/in/spaan
• rick@r2h.nl

More Related Content

The power of joomla!

  • 1. The power of Joomla! Rick Spaan Marketing & Internet Solutions
  • 2. Rick Spaan • Eigenaar R2H Marketing & Internet Solutions • Frontend developer • Member Joomla! Certfication Team • JLP (Joomla! Learning Partner) • Joomla! Certified Administrator • Joomla! Project Contributor • Pizza Bugs & Fun
  • 3. Wat is Joomla!? Joomla! is een award-winning content management system Fork van Mambo Sinds 22 september 2005 (Release Joomla! 1.0) Open Source en Full Community Driven 65.000.000 keer gedownload https://github.com/joomla
  • 4. Waarom Joomla!? MVC Framework as basis met zeer goede API Backward compatible vanaf 2.5.x PHP7.x Stabiel, veilig en snel Gewoon omdat het goed is! Het blijft een kwestie van smaak!
  • 6. • Basisfunctionaliteit van het CMS • Direct gekoppeld aan menu items • Worden veelal gebruikt om te beheren (artikelen, categorieën, gebruikers) • Er wordt altijd een component geladen Belangrijkste componenten • com_content • com_users • com_contact • com_tags Componenten
  • 7. • Weergave van component-data of eigen module-data • Kunnen op elke modulepositie neergezet worden • Welke posities aanwezig zijn is afhankelijk van de template • Kunnen aan menu items gekoppeld worden Belangrijke modules • mod_menu • mod_custom • mod_login (Adv. module manager van Peter van Westen – www.regularlabs.com) Modules
  • 8. • Voegen extra functionaliteiten toe • Output is vaak niet direct zichtbaar • Kunnen bijna alle taken vervullen in het systeem • Werken op basis van triggers in het systeem • Code injecteren of vervangen Belangrijke plugins • Captcha • Editors Plugins
  • 9. • Verzorgen de weergave • De template bestaat uit component gedeelte en module posities • Elk HTML design kan worden omgezet naar een Joomla! template • Meerdere templates op een site mogelijk • Veel gratis en commerciële templates • joomlashine.com • joostrap.com • gavick.com Templates (theme)
  • 11. Een website beheren – Basis structuur Artikel 1 Artikel 2 Artikel 3 Artikel 4 Artikel 5 Artikel 6 Categorie 1 Categorie 1a Categorie 1b Menu item 1 – categorie(s) blog layout (home page) Menu item 2 – Single article Custom HTML module Breadcrumbs module Menu Categories Artikelen
  • 12. • Er zijn veel instellingen mogelijk (Via de opties rechts boven in het component). De instellingen worden overerft. 1. Globale instellingen (Global settings – Articles) 2. Individueel artikel instellingen (Options tab in article) 3. Menu item instellingen (Options tab in Menu) Algemene instellingen 1 2 3 Via Componenten - Artikelen Via de Configuratie
  • 13. Maar wanneer komt nu de power???
  • 14. Voor de eindgebruiker • Meertaligheid • Groot standaard aantal modules • Tagging system • Geavanceerd zoeken ik alle content (Search / Finder) • Categorie nesting om content te sorteren • Geavanceerd filteren in de backend voor eenvoudig beheer • ACL (Access control list / Rechtenbeheer) • Versiebeheer • Alles voor SEO • RSS integratie (Creëren en lezen) • Veel shotcuts • Volledige controle over blog layouts en lijsten • Single click updates • Makkelijk uitbreidbaar met veel krachtige extensies • 2 Factor Authentication / Captcha on forms / e-mail cloak • Enzovoort… Joomla! - Out of de box compleet!
  • 15. • Eenvoudig template systeem • MVC framework (Design pattern Modal View Controller) • Template overrides (core output aanpassen) • Veel libraries al geïntegreerd (Zeer uitgebreide API) • Github • JFacebook / JLinkedin / Jgoogle / Jtwitter / Jopenstreetmap • HTTP Transfers • Stream file I/O • Extract ZIP / TAR • Image resizing and manipulation • LESS / SASS compiler • Microdata • CLI Joomla! hidden secrets - Nicholas Dionysopoulos https://www.youtube.com/watch?v=_7fhtYfsU-w () Voor de developer
  • 16. De kracht is ook de valkuil!!! Gelukkig is er ACL (Access control list) Controle over weergave in de frontend en backend voor: Componenten / Modules / Inhoud / Menu items (ACL manager van Sander Potjer / www.aclmanager.net)
  • 17. ACL verschil tussen Super Administrator / Manager
  • 18. Zelf aan de slag – Een template maken Joomla! Template design Niet zo moeilijk als het lijkt… Basiskennis van PHP / HTML / CSS vereist
  • 19. Eigen template 1 – templateDetails.xml Creëer een folder in: tempates/ met de naam myfirsttemplate Bestanden in mappen aanmaken: myfirsttemplate/ * css/ ** template.css * images/ ** testimage.jpg * index.php * templateDetails.xml Maak een ZIP file van de bestanden of gebruik de discover functie in Joomla! om de template te installeren. <?xml version="1.0" encoding="utf-8"?> <extension version="2.5" type="template"> <name>myfirsttemplate</name> <creationDate>25-01-2017</creationDate> <author>Rick Spaan</author> <authorEmail>rick@r2h.nl</authorEmail> <authorUrl>http://www.r2h.nl</authorUrl> <copyright>Rick Spaan – R2H</copyright> <license>GNU/GPL</license> <version>1.0.0</version> <description>My First template Project</description> <files> <filename>index.php</filename> <filename>templateDetails.xml</filename> <folder>images</folder> <folder>css</folder> </files> <positions> <position>top</position> <position>footer</position> </positions> </extension>
  • 20. Voorwaarde om module positie: <?php if ($this->countModules(‘top')) : ?> <div class="slideshow"> <jdoc:include type="modules" name=“top" style=“xhtml" /> </div> <?php endif; ?> Afbeelding uit de /images folder van de template: <img src=/slideshow/the-power-of-joomla/71456214/"<?php echo $this->baseurl; ?>/templates/<?php echo $this->template; ?>/images/testimage.jpg" alt="Custom image" class="customImage" /> https://docs.joomla.org/Creating_a_basic_Joomla!_template/nl Eigen template 2 – index.php
  • 21. • Gebruik zo weinig mogelijk extensies • Gebruik kwalitatief goede extensies • Kies een goede template als basis • Gebruik overrides voor aanpassingen (stick to the core) • Zorg voor goede documentatie voor speciale instellingen (Module class suffix en overrides) en begeleid de klant in het leerproces. • Gebruik ACL om het de klant makkelijk te maken Gratis Joomla! testen of een eigen Joomla! website? Ja dat kan! • https://www.joomla.com/ (life time) • https://demo.joomla.org/ (90 dagen) Tips
  • 22. Joomla! 3.7 New Features and improvements Te veel om op te noemen…
  • 23. Custom fields Eigen velden toevoegen aan alle content types
  • 24. New 3.7 Features Verwijderen van de ID’s in de URL: Van: website.com/14-sample-data-articles/75-my-first-joomla-3-7-article Naar: website.com/sample-data-articles/my-first-joomla-3-7-article Zichtbaarheid standaard instellingen
  • 25. New 3.7 Features Content aanmaken via menu item
  • 26. New 3.7 Features Content language wordt automatisch aangemaakt bij installatie taal
  • 27. Must have extensions • JCE – Joomla! content Editor (Editor) Free / Commercial • Advanced Module manager (Module management) Free / Commercial • Akeeba backup (Backup and restore) Free / Commercial • RSform (Forms) Commercial | RScontact (Contact form) Free • AcyMailing (Newsletters) Free / Commercial • Hikashop (Webshop) Free / Commercial • Easyblog (Blogging) Commercial • Osmap (Sitemap) Free / Commercial • AdminExile (Admin URL security / Anti brute force hacking) Free • SIGE (Image gallery plugin) Free • DJ image ºÝºÝߣr (ºÝºÝߣshow) Free
  • 28. Waar moet ik beginnen? • www.joomla.org (Joomla! website) • http://training.joomla.org (video tutorials) • http://docs.joomla.org (Documentation site) • https://community.joomla.org/user-groups.html (User Groups) • https://www.joomlacommunity.nl/agenda (Alle Joomla! evenementen) • @RickR2H • https://nl.linkedin.com/in/spaan • rick@r2h.nl

Editor's Notes

  1. Nare eigenschap Engels en Nederlands door elkaar heen.
  2. Geen standaard commenting mogelijk. MVC Model View Cotroller Design Pattern
  3. Componentdata zoals artikelen. Eigen data zoals slideshow waarbij in de module de afbeeldingen zijn ingeladen.
  4. Liberaries: Facebook
  5. Overige functionaliteiten breadcrumbs, random image,
  6. Liberaries: Facebook
  7. Voor de eindgebruiker overweldigend
  8. Liberaries: Facebook
  9. Liberaries: Facebook
  10. Bevat zowel Bugfixes Als vele nieuwe features Hopelijk de nieuwe image manager
  11. Photogalleries Teksten