Join the Joomla Override Challenge!
A different view for a core Joomla module. An event calendar based on the category blog view. A photo gallery, also based on a category blog. A directory. A product listing. These are just a few examples of the great things you can achieve by overriding Joomla’s core.
Both Viviana and Daniel discovered the power of overrides at a presentation during a Joomla event. Viviana remembers her ‘Aha-moment’ very well: “It was in a presentation by David Jardin, at the JoomlaDay Germany 2014 in Cologne. I had heard about overrides, but I was afraid of changing too much and not really sure what to do with overrides. David's presentation was an eye-opener.” Daniel adds: “I was really impressed about this kind of modification. I'm not a dev; I understand what the code is about but no more. Then I tried to make an override and it wasn't as complicated as I thought it would be. The fear and the limits are in our mind. Once you've understood this, you can go everywhere.”
From one to fifty
Viviana thinks her first one was an override from ‘mod_articles_latest’, to make an event calendar. Daniel has created many overrides for client projects. “I've really started to love this two years ago,” he says. “I decided to ‘collect’ them, and I created one, then another one, and eventually over 50. Once you start, you see that this is really easy and fun, and you can't stop.”
The Mother of the Overrides
Daniel and Viviana both have a collection of overrides on their website; Viviana worked on the project J!Over with Toni Gerns. “One day Daniel asked if we wanted to create a challenge and show our overrides solving a specific problem,” she tells JCM. “Viviana is the Mother of the Overrides,” Daniel says. “She even won a J.O.S.C.A.R., that’s like an Oscar but for Joomla. Challenging with her is very motivating. It’s a game and an intellectual challenge to imagine and create something with a technical limit.”
Complete website: Hornshadow
When Daniel wanted to have a place where h could display all his Joomla Override Challenges (#JOC), he decided to make a showcase offered to the community but also beyond. That’s when his website for the medieval city of Hornshadow came to life: “Because I love the middle ages, I imagined this city in 1320,” he says. “It took me a few weeks (mostly evenings and weekends) to imagine all the features, to implement them and to build the website. It was really very funny because while I was creating it, I tried to imagine Viviana's project!” In the meantime, Viviana was creating her own city website for the challenge.
An override is a modification or alternative layout for the output that Joomla or an extension generates. You definitely don’t need to be a super coder to create your own overrides. Daniel states: “Honestly, if you ‘read’ the code, you can override. If you need help, there is the Joomla Community which is always ready to assist and many resources available everywhere. So being curious with a bit of imagination is enough to start. Technical skills will come after, don't worry about this.” Viviana agrees: “You don't need to be a super coder, but you need to understand a little bit of PHP. If you want to delete a part of the code on an override, you have to know that you need to delete from the opening ‘if’ until ‘endif’, for example, otherwise you will get an error. On an override you do not necessarily need to change the PHP code, you can move parts from top to bottom, or add some lines of HTML. And you can change a lot only using CSS: adding classes or defining new ones on your template.”
Where to start?
If you want to discover the power of overrides yourself, there are numerous places where you can find information. Joomla’s own docs, for instance: https://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_core
Daniel has listed a lot of tips and snippets on his website: https://www.web-eau.net/developpement/joomla-overrides/introduction. And he has a scoop for the JCM readers: “I've started to write a 3 tutorials series to explain from A (the design) to Z (the final result) how to create overrides. The first episode will be published (in French) in 3 days. An English version will come too. And if you have questions about overrides, just contact Viviana and/or me and we'll help you.” J!Over has good documentation and FAQ as well, says Viviana: “Unfortunately it is in German only. But the Joomla documentation has also some information about overrides.”
Join the challenge!
So creating overrides can be fun, especially if you join the #JoomlaOverrideChallenge. “It's open to anyone and we'll be happy to challenge each other just for the fun of it,” Viviana says. “Just contact us. We both have a profile on the Volunteer portal and you can contact us on social media and on Glip. Don't hesitate, we’d love to hear from you!” Daniel and Viviana are happy to share the overrides that deserve to be known with the Joomla-community.
This challenge is mostly for fun, Daniel says. “There is no truth, no perfect answer, no override better than another, no obligation to participate every month. It's fun because we learn from each other. So keep calm and start to override with us.”
The overrides are a real J! advantage and a perfect example of how strong and powerful Joomla can be. It is one of Joomla’s great selling points, and the power and simplicity of overrides might be a really convincing argument for people to switch from other CMS to Joomla. So Daniel and Viviana invite you to start right now: “Create your own overrides, share them and be loud and proud about them. Spread the Joomla love!”
David’s presentation on YouTube: https://www.youtube.com/watch?v=1sGdcZS_F7I&list=PLSwFVRVZ3joRZhX3JqNI4cOzoaK_Hl7Td&index=19
Viviana’s first override: https://www.j-over.de/de/template-overrides/eventkalender
Daniel’s website for the medieval city of Hornshadow: https://hornshadow.joomla.com/
Viviana’s city website: https://www.dr-menzel-it.de/overrides/
Viviana and Toni’s collection of overrides: https://www.j-over.de/de/
Daniel’s connection with tips and snippets: https://www.web-eau.net/developpement/joomla-overrides/introduction.
Joomla documentation on overrides: https://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_core