Back in September, I wrote a quick Blog post about some optimization plans for the next (minor) version of FMJ-TagCloud.

However, the endeavor to optimize things as much as I wanted to, resulted in a much bigger update.

With that bigger update, I decided to also introduce some more functionality and thus the next minor version, became a major version.

As I am playing with the thought of introducing a cutdown free version of this module at some point, I took the opportunity and also renamed the module from "FMJ-TagCloud" to "FMJ Tag Cloud PRO"


So, without further ado, here are the details of the major upgrade, culminating to FMJ Tag Cloud PRO 2.0.0. (Download)


Tag-Data transfer with AJAX:

Until now, the tag data (the actual tags, their links and weight) were included in the page's content and sent to the user. 

Depending on the tag source and generator setting and combined with the module's and Joomla's caching settings, this could cause excessive caching. Or if caching is disabled, more load on the server.

With the module's support of AJAX we can now separate the structure of the module (the container, styling and inclusion of necessary js and css) from the actual data.

This alone gives us some room to optimize the process, namely:

  • the "structure" can now be cached "indefinitely", that is with a high cache time (weeks, months, ...) resulting in less effort by the server to constantly run through the entire process.
  • the AJAX tag-sources can be cached per page or per menu item on the server-side for as long as necessary. This also results in not having to collect all the data and generate the final feed for the cloud.
  • the AJAX response can be cached on the client, for a defined period of time. This will further reduce load on the server, as the client will serve the tag data from cache, if it has not yet expired, resulting in one less call to the server.
Read more ...

So, a week ago, I added FMJ Blank View as a new member to the FMJTools Family of Joomla Extensions.

If you have not seen it yet, let me quickly explain what it does.

We all know that, if we have a page that only has modules on it but no component generated output, we mostly set its menu type to "Featured Articles".

Depending on the configuration this might or might not produce significant overhead, as it runs through unnecessary code and database calls.

FMJ Blank View reduces that unnecessary code execution and database calls, to the absolute minimum, depending on your use case.

It has 5 predefined views, which are optimized to each use case. Depending on if you need to include custom Metadata of that menu item or not, the extension removes even more clutter.


Note: This Extension was inspired by the also fine existing "Blank Component" extension by Omar Muhammad, but optimized further, to provide the best performance possible using this method.



About a month ago, I released FMJ-TagCloud version 1.0.1 with some upgrades of the used tagloud libraries, as well as a few more minor performance improvements and minor bug fixes. See the details about that here.

Now, moving forward, I have been testing some improvements to the caching mechanism alongside the introduction of loading tags asynchronously through XHR, after the page has loaded.
In my initial tests, the combination has helped a lot in minimizing excessive module cache generation, due to changing of the content of the module (if caching for the module is enabled). Those improvements will likely make it into the next minor release. I also have some more ideas on minimizing the load on the server, caused by the module, so that next minor version will probably be released sometime within the next 1-2 months.

Stay tuned!

Page 1 of 2