More than 30 gems for Joomla 4 I can't live without
I am always very happy to pay Developers for Joomla Extensions because they deserve it.
Some extensions are widely known because they are available on the Joomla! Extensions Directory™ https://extensions.joomla.org/ and have excellent reviews.
But there are also many gems out there which are less known, for example because they are only available on Github.
In this article I wanted to share with you my own list of those little extensions that I use on most of my Joomla 4 websites, together with a few tips & tricks.
The vast majority of these extensions are open source (in which case I encourage you to contribute!) or at least free of charge.
I have gathered them in 8 themes.
Have fun and enjoy Joomla!
MEDIA MANAGER
Allow SVG in the Media Manager
All it takes is 30 seconds to adapt the Options.
https://www.youtube.com/watch?v=U7hHYpuNqsg
Txs Brian!
Preview SVG images in the Media Manager and select SVG files in media fields
Allowing SVG is already nice but being able to preview them is even better!
Note: the preview SVG image will be fixed in Joomla 4.3.
https://github.com/nikosdion/joomlasvg
Txs Nicholas!
Responsive Images
What about generating automatically AVIF & WEBP images and creating source sets (ie creating different sizes of each image in order be totally responsive) ?
https://responsive-images.dgrammatiko.dev/
Txs Dimitris!
A different folder for each User in the Media Manager
What about restricting access to a specific part of the images folder (images/user/userName, where userName is either the real or a hashed version of the user name). The plugin could be enabled per user group.
https://restrictedfs.dgrammatiko.dev/
Txs Dimitris!
FTP, Pixabay, Pexels, Emoji, Filters directly in the Media Manager
What about seeing not only local files but also distant files in the Media Manager? And having Filters and other additional features?
https://joomla.digital-peak.com/products/dpmedia
Txs Allon!
Allowing Documents (PDF etc) in the Custom Field of Type Media
Want to have a Custom Field of Type Media which would allow to select not only Images but also (for example) Documents?
The paid version of DP Media mentioned just above allows this (and many more things)
Txs Allon!
SEO & OPEN GRAPH
Open Graph (images used when sharing on social media)
What about automatically generating Open Graph images for your site's pages, superimposing text and graphics over an image or solid color background
https://github.com/lucid-fox/social-magick
Txs Crystal!
Sharing Buttons
What about having lightweight Sharing Buttons with no javascript and no tracking?
https://github.com/woluweb/Sharing-Buttons
Txs me!
Yoast SEO
What about having SEO tips when you edit an Article?
https://www.firecoders.com/joomla-extensions/route-66
Txs Firecoders!
4SEO
What about having an SEO extension that does it all (Open Graph, sitemap, internal linking content writing assistance, broken links, error pages, redirections, ...)?
Given all these features (and I still discover new ones every time I use it), this is a paid extension.
https://weeblr.com/joomla-seo/4seo
Txs Yannick!
CUSTOM FIELDS
Conditional Fields ("showon")
What about allowing Joomla custom fields — including those in subforms — to be displayed or hidden based on another custom field's value?
https://github.com/nikosdion/plg_content_fieldsshowon
Txs Nicholas!
More Types of Custom Fields
What about having 26 new Types of Custom Fields (videos, maps, ...) on top of the 16 native ones
https://www.tassos.gr/joomla-extensions/advanced-custom-fields
Txs Tassos
Chained Fields
What having having the ability to create cascading dropdown fields that dynamically change based on the previous selection?
That is 1 of the 7 extra Types of Custom Fields you get with the paid version.
https://www.tassos.gr/joomla-extensions/advanced-custom-fields/docs/the-chained-fields-field
Txs Tassos!
Fields inception
What about nesting Custom Fields of Type Subform (a repeatable list consisting of other Custom Fields)
https://github.com/nikosdion/plg_fields_inception
Txs Nicholas!
Filtering
About adding the following kinds of filters for each category displayed in the frontend of your site: Subcategory / Tags / Custom fields
https://github.com/nikosdion/plg_system_filtermagic
Txs Nicholas!
EDITOR
WYSIWYG
What about enabling true WYSIWYG for Joomla's tinyMCE Editor?
By default it supplies only the required files for the Cassiopeia template but you can use it for any other template as well.
https://wysiwyg.dgrammatiko.dev/
Txs Dimitris!
A different Edit Form per Category
What about customizing any back-end / front-end com_content Edit Form per Category
https://github.com/ttc-freebies/custom-edit-forms-per-cat
Txs Dimitris!
Shortcuts in TinyMCE
What about having a set of keyboard shortcuts to use when creating content with Joomla 4 and the default editor (TinyMCE).
https://github.com/brianteeman/slashtools
Txs Brian!
Better front-end edition
What about making editing content in the front-end of your Joomla 4 website distraction free?
https://github.com/brianteeman/cleanedit
Txs Brian!
Customizing TinyMCE menus
This all started with a question I asked on the Joomla Facebook Group: https://www.facebook.com/groups/joomlanospam/posts/10158526033230997/
There are 2 ways to add Styles to the predefined menus of TinyMCE:
- there is a native solution, playing with media\templates\site\cassiopeia\css\editor.css (or editor.min.css) or its equivalent in a Child Template (note: make sure your classes are not set as .test but p.test for instance)
- there is a better solution when using the above-mentioned https://wysiwyg.dgrammatiko.dev/
The WYSIWYG plugin adds ao the following 2 files
- /media/templates/site/cassiopeia/js/style_formats.json
- /media/templates/site/cassiopeia/js/formats.json
See more explanations about this (including the content of those files) at the bottom of https://wysiwyg.dgrammatiko.dev/documentation/index.html
If you use a Child Template, you can simply put those file in your Child Template (which is handy and makes sure your files are never overwritten):
- /media/templates/site/cassiopeia_MYCHILD/js/style_formats.json
- /media/templates/site/cassiopeia_MYCHILD/js/formats.json
Note: in the case of multilingual websites, if those files in your Child Template do not "trigger" then simply make sure
- that the Child Template is "default" for each language
- and also that the Child Template is "default" (and not the Parent Template)
Txs Dimitris!
Customizing further TinyMCE
Wha about having a system plugin to customise TinyMCE beyond what Joomla lets you do?
https://github.com/nikosdion/plg_system_tinymod
Txs Nicholas!
CONTENT
Translations with Deepl
What about translating all your content to other languages thanks to Deepl, directly from your Editor (so keeping all the HTML tags!)
https://obix.nl/en/joomla/joomla-extensions-by-obix/editor-translation-plugin
Txs Pieter-Jan!
Artificial Intelligence with ChatGPT
Too lazy to create your own content? Want to use ChatGPT directly from your Joomla Editor?
https://github.com/R2H-BV/chatgpt
Txs Rick!
Create Articles or Categories in bulk
What about creating Article or Categories in bulk, including the corresponding Menu Items?
https://www.joomlashack.com/joomla-extensions/oscontent/
Txs Steve!
Create Articles from a Google Sheet
What about creating hundreds of thousands of Articles, including their Custom Fields directly from a Google Sheet (thanks to the Joomla API)?
Well, I am about to start a new series of articles in the present Joomla Community Magazine (JCM) about this.
Yes, this is a teaser for my coming articles ? (and a good way to commit to it now that I have announced it officially)
https://magazine.joomla.org/authors/marc-dechevre
Txs me!
Create Articles from a CSV file
What about importing/exporting your Articles in batch, including their Custom Fields, directly from a CSV file?
https://github.com/AlekVolsk/cfi/
Txs Alek!
A super simple Form to let visitors (or administrators) create Articles from the front-end
What about a super simple Form to let visitors (or administrators) create Articles from the front-end, including the Custom Fields (thanks to the Joomla API)?
This is just one example of what is possible with Convert Forms 4 BETA (which should become Stable in the coming weeks), I guess only in the paid version.
https://www.tassos.gr/joomla-extensions/convert-forms/docs/webhooks#webhooks_article
Txs Tassos!
RO-CSVI
I have just mentioned 4 tools to import Articles in Joomla. It would not be fair not to mention the most complete tool afaik allowing import/export, being logically a paid extension.
https://rolandd.com/products/ro-csvi
Txs Roland!
ADMINISTRATION
Access your Log files
What about accessing your Log files directly from the backend (instead of FTP)?
https://weeblr.com/joomla-seo/4logs-simple-free-logs-viewer
Txs Yannick!
Task list
What about having your Task list directly in the backend of your website?
https://github.com/brianteeman/tasklist
Txs Brian!
A Task Scheduler to check in all your content
What about having all your Articles, Menu Items, Plugins etc be automatically checked in every night or at the frequency that you choose?
https://github.com/zero-24/plg_task_checkin
Txs Tobias!
ADDITIONAL FEATURES
A powerful comment system
What about having a fast, powerful and highly configurable comment system for Joomla?
https://www.akeeba.com/products/engage.html
Txs Nicholas!
Invalidate browsers caches
We have all experienced this: we have changed some CSS or JS file... but our users don't see the result because of their browsers cache.
https://github.com/dgrammatiko/invalidate-cache
Txs Dimitris!
Dark Mode for your back-end
What about having an alternative version of Atum, the backend template of Joomla4? This is Muta
https://muta.dgrammatiko.dev/
Txs Dimitris!
Dark Mode for your back-end and/or front-end
What about taking care of your eyes?
https://github.com/nikosdion/DarkMagic
Txs Nicholas!
Cards Layout
What about having nice overrides with configuration settings to create Card Layouts?
https://github.com/brianteeman/joomla-cards
Txs Brian!
Login Modal
What about displaying the login module in a modal/popup?
https://github.com/brianteeman/loginmodal
Txs Brian
Module Versioning
What about having Module Versioning (the same way we have Article Versioning natively)?
https://github.com/R2H-BV/
Txs Rick!
Orphan images
What about finally cleaning your website? This starts by identifying orphan images.
Joomla 3 version is free, Joomla 4 version is paid.
Image Manager https://www.r2h.nl/joomla-extensions
Txs Rick!
LEARN MORE
Joomla! 4 Masterclass
A practitioner's guide to building rich and modern websites using the brand-new features of Joomla 4
Paperback so paid of course (PDF version included)
https://www.amazon.com/Joomla-Masterclass-practitioners-building-brand-new/dp/1803238976
Txs Luca!
Extension Development
The missing Joomla™ reference for extension developers
https://www.dionysopoulos.me/book.html
Txs Nicholas!
Learn Joomla 4
Powerful user tips & secrets about Joomla 4 (13 videos atm)
https://www.youtube.com/@learnjoomla4/videos
Txs Brian!
BasicJoomla
Hundreds of videos
https://www.youtube.com/@Basicjoomla/videos & https://www.youtube.com/@Basicjoomla/streams
Txs Tim!
French translation: https://www.joomla.fr/actualites/plus-de-30-joyaux-pour-joomla-4-dont-je-ne-peux-me-passer
Some articles published on the Joomla Community Magazine represent the personal opinion or experience of the Author on the specific topic and might not be aligned to the official position of the Joomla Project
By accepting you will be accessing a service provided by a third-party external to https://magazine.joomla.org/
Comments 17
Hi, Marc! If you want to customise all configuration aspects of TinyMCE I have another little plugin you might appreciate: https://github.com/nikosdion/plg_system_tinymod. As you can see in the README, I am using it to define my own style and block formats. It comes in handy when you want, for example, to prevent your clients from using H1 because your site's heading already has an H1 and, like Immortals in Highlander, “in the end, there can only be one”
Excellent! I was not aware of that one. Will add it to the list (but you were quite present in the list already ). Txs again for everything!
A lot of good stuff here, maybe I should upgrade to Joomla 4
J3 was already great but J4 is sooo cool
Thanks Mark, I see great stuff in there, I will take my time to check all this, exciting!
This is a great list. Since Nicholas was too humble to mention it, I will say that Akeeba Backup and AdminTools are the must-haves for me. I also like to install JCE, and XT Responsive Images plugin.
As for other add-ons, the strong ones in my tool belt are Phoca Download, RS Forms, SP Page Builder, and Helix Framework.
Hi Allan. There are other great extensions of course that everybody knows (and uses hopefully), like Akeeba Backup if I should only name one.
But the goal here was not to mention the most well-known one but a series of "hidden gems" that are for most of them not even available on the JED.
Nice!!! Thanks!
Hello
Thank you for these "little" extensions that I discovered and will use. Thanks
I will still make some remarks
I discover more and more joomla extensions that work with joomla 4 that are not declared "joomla 4 compatible" on the JED!
I also see more and more extensions on github. You must have good reasons.
I find that it gives a bad information of the richness and number of Joomla 4 compatible extensions
Moreover, I also realize that I have already installed plugins from github but I missed the updates (features, security) because they are not registered in the joomla update system
An opinion from a Joomla enthusiast.
What an absolute Goldmine ?? This is such a great idea. Hopefully this could become a theme (trustworthy J people sharing their goldmines ?).
Txs Anna. Actually when I started writing this, I had like "only" 10 links in mind. Then every day I was thinking of other ones It would indeed be nice if everyone would share his/her tips & tricks.
Thanks Marc, great!
One that is installed on all my websites, to use the bootstrap components, simple and powerful.
https://github.com/ceford/j4xdemos-mod-custom-bscompos
I just don't understand why put so much energy into TinyMCE when one can use JCE?
Didier.
Txs for sharing. I am not sure of what bscompos does exactly when reading its short description, but did you know that Joomla4 already ships with BS5? See for example https://slides.woluweb.be/cassiopeia/cassiopeia.html#4-6-5-option-5-for-bootstrap-5 to see how to enable it.
Coming back to TinyMCE, there are many reasons to stick to core. All my Joomla 3 websites used JCE so I don't want to criticize, but since Joomla 4 I have switched back to TinyMCE.
To be honest JCE is based on a very old version of TinyMCE (which is not good for security etc).
Thanks for the TinyMCE info Marc, I didn't know this.

And mod_custom_bscompos is like a Joomla custom module with an extra tab where you can activate the various Bootstrap Components. The module simply loads the bootstrap javascript code already present in Joomla bootstrap, barely 8kB in size and super handy, see image.
And I know and often use your Cassioppeia Tips & Tricks, thanks again.
FYI: I had contact with Ryan Demmer, the JCE designer, and he was able to reassure me about JCE security:
“JCE is based on an early version of TinyMCE but has over the years been heavily modified and includes much of the code from the more recent versions. We monitor the releases of the current versions of TinyMCE for any security issues and always include the relevant fixes if necessary in JCE. I have not seen any evidence to suggest that JCE may not be completely secure, we have not had any reports of active vulnerabilities.”
Hi Marc,
do you know the dark themed backend template "Bettum" from Charlie Lodder?
https://github.com/C-Lodder/joomla4-backend-template
Nice usability feature: the modules on the dashboard have a double cross icon beneth the gear wheel icon. If you move the mouse pointer to the double cross, you can drag and drop the module to another position.
Regards, Andreas
Txs Andreas. Indeed I am aware of Bettum. Actually, if you want an up to date list of backend templates you can always check here https://templatejoomla.com/results/category/Backend (and ask Daniel to add those he would have missed)