


Explore how Joomla serves as a content management system using model–view–controller architecture, enabling non-programmers to manage site content from an admin panel, as David Hurley introduces Joomla and download options.
Select your preferred operating system and IDE, then configure a local server with Apache, MySQL, and PHP; organize projects and use version control for Joomla development.
Learn the essentials of code versioning and offline backups, compare git-based workflows with svn, and explore cloud storage options like Dropbox and Google Drive to keep your Joomla projects safe.
Explore the importance of testing in Joomla development, learn acceptance, functional, and unit testing, and discover resources and continuous integration tools to ensure code stability and 100 percent test coverage.
Explore the basic structure and function of Joomla plugins, including event-driven execution, sequencing, and the observer design pattern, and learn to create a custom plugin with GitHub workflow.
Discover how to build a Joomla plugin by creating an ex-MIL file, defining triggers such as on content before display, and configuring admin panel fields for a link protect plugin.
Explore how to build a Joomla plugin base: define entry point, extend JPlugin, set the on content before display trigger, and manage context, parameters, and replacement with a helper using regex.
This lecture shows how to use an optional helper file in a Joomla plugin to simplify code, and outlines replace links and leave site functions for external and internal links.
Explore plugin creation in Joomla development 101, including triggers and implementations, language file creation, keyword documentation, options testing, and distribution through web, JED, and third-party marketplaces.
Explain the basic structure and function of Joomla modules, lightweight extensions that render secondary information, placed in template-defined positions, and managed in the admin panel with overrides.
Master creating a Joomla module XML file, setting up files and language strings, and configuring basic and advanced fields (visit count, default message, modular layout, suffix) for PHP coding.
Create the base file for a Joomla module, named after the module folder, with minimal code, and wire a helper and layout to control when and how the view displays.
Learn to create a Joomla module helper file as a standalone PHP class with no naming requirements, and implement a show function that uses cookies to track visits.
Learn to create Joomla module view files with default and warning layouts, package and install the module, and test display logic using visit counts and cookies.
About the Course
This course will help you learn how to write Joomla! code. We will cover everything from plugins and modules to components and templates (if there is a demand). These lessons are specifically designed to help you learn how to code in the "Joomla" style. You do not need any previous Joomla coding experience and we will also look at some basics of environment configuration and setup.
Time to Complete
This course in its entirety will provide a base skillset to create complex applications for the Joomla CMS. Initially these lessons can be completed in as little as a few days.
Course Structure
This course is structured around video presentation of coding with an intermixing of lecture style presentation of a few key concepts before beginning to code. The majority of each lesson is hands-on experience with the code. The instructor style is informal and welcomes interaction with students.
Course Objective
If you are looking to release any type of code (plugin, module, component, template) for the Joomla! CMS then this course will get you up to speed quickly with the most up-to-date coding methods and best practices.
The Instructor
This course is taught by David Hurley. He is the Community Development Manager for Joomla! as well as a member of the Production Leadership Team in charge of all the code releases and managing the code of the CMS which is volunteer driven and open for contribution by anyone worldwide. He is also a maintainer for the Joomla CMS and Joomla Framework projects, a member of the Joomla Security Strike Force, a number of working groups, and writes for the Joomla Magazine. He travels around the world speaking about Joomla and teaching developers and others how to write code to follow best practices and get more involved with Joomla development.