Joomla! Modules. Iedereen kan ze maken!

Vergelijkbare documenten
Hoe bouw ik een component? Drs. Arjan Burger

Joomla! 1.5 templates

Formulier maken en opvangen met php

BROdeLuxe Opties. Skins. Peter Wester

Versie 0.2. Documentatie Onsweb Club plugin voor NHV verenigingen. Laatste wijziging: 10 mei 2013 Auteurs: Marien Dongstra, Sebastian Huisman

Templates maken voor Joomla! Hoe maak je zelf een template voor je Joomla! website

Technisch ontwerp. Projectteam 6. Project "Web Essentials" 11 maart Versie 1.1.0

Voor vragen: of mail naar

Technisch ontwerp. Projectteam 6. Project "Web Essentials" 02 april Versie 2.1.0

NVU work shop. Kees Moerman November Overzicht van een web site. Wat is een web site HTML files

7 september 2018 DE VERWERKING VINCENT ROELAND

Joomla! 1.0 vs Joomla! 1.5

Een app (webapplicatie) in php voor het berekenen van de inhoud van een balk

Deze kaart kun je gebruiken om uiteindelijk een SMS te versturen naar bijvoorbeeld je ouders, je vrienden of naar iemand van je klas

Dynamische Websites. Week 2

Website beoordeling fibreclick.co.uk

Website beoordeling zsdudova.sk

CVO Crescendo. Download de laatste versie van Drupal (tar.gz) via én

STUDIEWIJZER WEB PENTESTING BACHELOR IN DE TOEGEPASTE INFORM ATICA SEMESTER 2 ACADEMIEJAAR LECTOR PARCIFAL AERTSSEN

De auteur van dit ebook kan op geen enkele manier verantwoordelijk gehouden worden voor eventuele onjuistheden in dit ebook.

ideal Betaal Formulier (Ondersteund o.a. ideal, MisterCash, Direct E-Banking en Credit Card)

WEBDESIGN. html tags. Neem de grondbeginselen van html door via de online cursus op de informaticasite of via instruct-online

Joomla Template & Bootstrap 3.0. JUGA Henk Rijneveld (henk@henkrijneveld.nl)

De tag aan het begin van het PHPscript is "<?php" aan het einde van het PHPscript gebruik je "?>".

NOiV jaarcongres maart Flamingo. de weg naar versie 4 een kwestie van durven?

PERSOONLIJKE GEGEVENS

Het bouwen van een website.

Dynamische Websites. Week 9

Tips & Trucs in het nieuwe jaar. 5 januari 2016! Copyright 2016 HCC-Joomla! Heerenveen, Berend Bouma en Margreet Bekema Alle rechten voorbehouden

DrICTVoip.dll v 2.1 Informatie en handleiding

ALLES OVER MAPS GOOGLE EN ALTERNATIEVEN

Arrays en Foreach. Huub de Beer. Eindhoven, 4 juni 2011

procesbeschrijving. Opdracht 1

De plug-in is heel eenvoudig te installeren met een setup-programma. Waarna je een aantal menu opties in het tools menu er bij krijgt.

Releasedocumentatie. Koppeling Metacom-Persmaster. Auteur: VanMeijel september

Object Oriented Programming

Dynamische websites met PHP (basis) Karel Nijs 2010/09

Vierde JUG043 bijeenkomst 2017

Website beoordeling google.com

CMS Made Simple productsheet

Loremipsumdolorsitamet,consectetue radipiscingelit.aeneancommodoligula egetdolor.aeneanmassa.cumsociisnat oquepenatibusetmagnisdisparturient

Is het mogelijk een aparte categorie te maken waar allerlei vragen en antwoorden omtrent webdesign geplaatst kunnen worden?

Joomla! Open Source Content Management System. Dhr. Evert Jochums Turnhout Cross-media ontwerp

WEBSECURITY INFORMATICA STUDENTENWERKING. Gemaakt door Bryan De Houwer en Yuri Moens

1. Kopieer de bestanden die in de html directory staan, naar de html directory van HomeSeer.

Agenda. Wat is HTML? Meer over HTML... Waarom HTML leren? Aniel Bhulai. Inleiding Computergebruik - HTML 1. Waarin maak je een HTML-bestand?

Stappenplannen MailPlus SOAP API

procesbeschrijving. Web Opdracht

Koppel Joomla met andere systemen

Geboortedatum: 6 februari Woonplaats: Waddinxveen. Functie: Zelfstandig Web Development Professional

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Rapporten. Labels en Rapporten in Atlantis 1. Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports)

1. Werken bij mijn domein

Aanleveren van te verzenden sms berichten aan SMS Via

INHOUDSOPGAVE Het Boekenwinkeltje Registreer.aspx Opgaven... 97

In dit hoofdstuk maak je kennis met PHP. Hoe werkt deze. programmeertaal? En hoe is het ontstaan? Ook leer je welke editors

OAS en het Kennisplatform API s. Dimitri van Hees

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Angular Best Practices Door Alex en Chris van Beek

DocBook XML documenten bewerken

Hosting. Bestelformulier en domeinnaamcontrole. Januari, WeFact B.V. Kuiper 7a 5521 DG Eersel Nederland. w: e:

ASRemote WebService. Via deze webservice kunt u:

Curriculum Vitae. Persoonlijke gegevens. Straat : Rembrandtplein 81. Geboorte datum : 01/03/1979 Geboorte plaats : Leiden Burgerlijke staat : Ongehuwd

HTML en CSS. Je website bestaat uit HTML. Dat is een taal die browsers (Internet explorer, Chrome, Safari) kunnen lezen.

Oracle JHeadstart 11g

Geboortedatum: 6 februari Woonplaats: Waddinxveen. Functie: Zelfstandig Web Development Professional

WEBDESIGN & Joomla 3.6

Installatie handleiding

Correspondentie inzake overnemen of reproductie kunt u richten aan:

STUDIEWIJZER MOBILE WEB APPS AND SECURITY BACHELOR IN DE TOEGEPASTE INFORM ATICA SEMESTER 4 ACADEMIEJAAR LECTOR: FRÉDÉRIC VLUMMENS

LES 3: XAMPP OF MAMP. Lesoverzicht:

Drupal 7 website met uitvaartkosten calculator module

Mogelijkheden RSS content in MailPlus

<NANO> Creeren met. <code> Bouw je eigen. website

Website beoordeling paginaswebmadrid.info

Website review nieuws-feiten.nl

Website beoordeling askgeek.io

Webrelais IPIO-4R4I-CM Compact

Productenfeedspecificatie voor leveranciers, easygiven

Portals & Open Source

Stages/projecten voor het academiejaar Voka Kamer van Koophandel Limburg Hilde Klykens

Handleiding Update Digitaal sociaal huis

Webhosting Online Beginnen met Joomla v1.0

BibTeXML in DocBook XML gebruiken om wetenschappelijke artikelen te schrijven

Transcriptie:

Joomla! Modules Iedereen kan ze maken!

Even voorstellen... Niels van der Veer (n9iels) Tweede jaars student informatica aan de Hogeschool Rotterdam Werkzaam bij Perfect Web Team als developer Lid van de Joomla! Bug Squad (JBS) 2

Slides De slides zijn online te vinden op http://slides.nielsvanderveer.me 3

Inhoud Waarom en waarvoor modules? Blauwdruk van een module Bestanden Parameters Layouts Taalbestanden Tips voor ontwikkelen 4

Wie gebruikt de "Aangepaste HTML" module? 5

Waarom modules? Parameters Herbruikbaar Meertalig Overal te plaatsen 6

Waarvoor je eigen module? Sliders Contactpersonen Artikel van de week Nieuws Boodschappen Sociale buttons Bootstrap Aangepaste HTML Openingstijden 7

Blauwdruk van een module

Bestandsstructuur mod_hellojug tmpl default.php mod_hellojug.zip mod_hellojug.php mod_hellojug.xml 9

mod_hellojug.xml <?xml version="1.0" encoding="utf-8"?> <extension type="module" version="3.1" client="site" method="upgrade"> <name>hallo JUG!</name> <author>niels van der Veer</author> <creationdate>juni 2016</creationDate> <copyright>copyright (C) 2016 Niels van der Veer. All rights reserved.</copyright> <license>gnu General Public License version 2 or later; see LICENSE.txt</license> <authoremail>contact@nielsvanderveer.me</authoremail> <authorurl>www.nielsvanderveer.me</authorurl> <version>1.0.0</version> <description>voorbeeld module voor een JUG</description> <files> <folder>tmpl</folder> <filename module="mod_hellojug">mod_hellojug.php</filename> </files> <config> </config> </extension> 10

mod_hellojug.php <?php defined('_jexec') or die; require JModuleHelper::getLayoutPath('mod_hellojug', $params->get('layout', 'default')); 11

tmpl/default.php <?php defined('_jexec') or die;?> Hallo JUG! 12

Hello JUG! 13

Parameters Worden gedefinieerd in het XML bestand tussen de <config> tags <fields name="params"> <fieldset name="basic"> <field name="name" type="text" default="" label="jug naam" description="geef de naam van de JUG op" /> </fieldset> </fields> https://docs.joomla.org/standard_form_field_types 14

Parameters 15

Parameters Kunnen worden aangeroepen in PHP bestanden $params->get("paramter-naam", "standaard waarde"); 16

tmpl/default.php <?php defined('_jexec') or die;?> Hallo JUG <?php echo $params->get("name", "010");?>! 17

Layouts Staan in de /tmpl map Standaard layout is default.php Aan te roepen met een parameter <fieldset name="advanced"> <field name="layout" type="modulelayout" label="jfield_alt_layout_label" description="jfield_alt_module_layout_desc" /> </fieldset> require JModuleHelper::getLayoutPath('mod_hellojug', $params->get('layout', 'default')); 18

tmpl/joomladays.php <?php defined('_jexec') or die;?> Hallo Joomla! Dagen <?php echo $params->get("name", "NL");?>! 19

Layouts 20

Layouts 21

Taalbestanden

Taalbestanden Staan in de map language van je website Worden in XML bestanden direct aangeroepen Kunnen in PHP worden aangeroepen en vertaald met: echo JText::_("MOD_HELLOJUG"); 23

Taalbestanden mod_hellojug language tmpl nl-nl default.php en-gb nl-nl.mod_hellojug.ini nl-nl.mod_hellojug.sys.ini joomladays.php mod_hellojug.php mod_hellojug.xml en-gb.mod_hellojug.ini en-gb.mod_hellojug.sys.ini 24

language/nl-nl/... nl-nl.mod_hellojug.ini MOD_HELLOJUG="Hallo JUG!" MOD_HELLOJUG_XML_DESCRIPTION="Voorbeeld module voor een JUG" MOD_HELLOJUG_FIELD_NAME_LABEL="JUG naam" MOD_HELLOJUG_FIELD_NAME_DESC="Geef de naam van de JUG op" MOD_HELLOJUG_GREETING_JUG="Hallo JUG" MOD_HELLOJUG_GREETING_JD="Hallo Joomla! Dagen" nl-nl.mod_hellojug.sys.ini MOD_HELLOJUG="Hallo JUG!" MOD_HELLOJUG_XML_DESCRIPTION="Voorbeeld module voor een JUG" 25

language/en-gb/... en-gb.mod_hellojug.ini MOD_HELLOJUG="Hello JUG!" MOD_HELLOJUG_XML_DESCRIPTION="Example module for a JUG" MOD_HELLOJUG_FIELD_NAME_LABEL="JUG name" MOD_HELLOJUG_FIELD_NAME_DESC="Give the name of the JUG" MOD_HELLOJUG_GREETING_JUG="Hello JUG" MOD_HELLOJUG_GREETING_JD="Hello Joomla! Days" en-gb.mod_hellojug.sys.ini MOD_HELLOJUG="Hello JUG!" MOD_HELLOJUG_XML_DESCRIPTION="Example module for a JUG" 26

mod_hellojug.xml <?xml version="1.0" encoding="utf-8"?> <extension type="module" version="3.1" client="site" method="upgrade">... <files> <folder>language</folder> <folder>tmpl</folder> <filename module="mod_hellojug">mod_hellojug.php</filename> </files>... </extension> 27

tmpl/... default.php <?php defined('_jexec') or die;?> <?php echo JText::_("MOD_HELLOJUG_GREETING_JUG");?> <?php echo $params->get("name", "010");?>! joomladays.php <?php defined('_jexec') or die;?> <?php echo JText::_("MOD_HELLOJUG_GREETING_JD");?> <?php echo $params->get("name", "NL");?>! 28

Taalbestanden 29

Tips voor ontwikkelen

Tips voor beginnende ontwikkelaars - Lokale website met MAMP of XAMPP - IDE, bijv. Visual Studio Code, Notepad++, Sublimetext, Atom - W3Schools - Afkijken mag : -) 31

De slides zijn online te vinden op http://slides.nielsvanderveer.me De module is te vinden op GitHub, http://github.com/n9iels/mod_hellojug 32

Bedankt voor de aandacht!