Joomla! Plugin PXLCompressor – Image compression made simple

PXLCompressor is a free Joomla! plugin, which allows you to compress and resize every image uploaded with the media manager automatically. This is especially useful if the uploaded images are not preprocessed and allows you to speed up your website drastically.


  • Automagically resize every image uploaded with the media manager component on the fly
  • Improve page speed by decreasing file sizes
  • Chose a scale method according to your needs (scale inside / outside / fit / fill)
  • Set compression levels for png/jpeg files
  • Supported file formats: JPG, PNG and GIF
  • Create thumbnails

Currently, the following image compression services are supported, but there might be more to come:

  • a free image optimization service with unlimited number of compression. It supports the most common file types like (PNG, JPG, GIF, BMP and TIF). However: The JImage class of Joomla! framework does not seem to support TIF, so compression of .tif files is currently not enabled.
    Only downside: the maximum size of a file is 5MB, but if you enable resizing, which is done before, it is very unlikely that you will ever reach this size
  • TinyPNG: the web service allows you to compress your PNG and JPG files. You can subscribe for a free plan enabling you to compress 500 images per month without any charges. Simply fill in your API key to get started.

If you enable both compression services and TinyPNG fails for any reason, ReSmush will be used as a fallback.

It is planned to support local compression using optipng/gifsicle/jpegoptim in later versions.

Special thanks to Viktor Vogel for creating the plugin EIR, from which I took larger parts of the code.

If you found a bug or have a feature request, please file a report on github or leave a comment.


v. 1.0.2 fixed bogus error message
v. 1.0.1 minor Bugfixes

Grab the latest version here: or at JED

Joomla! Blank Template

Als Basis für viele meiner Templates habe ich bis vor kurzem Bloggerschmidts Blank Template benutzt. Da das Ganze aber scheinbar nicht mehr gewartet wird, habe ich mich dazu entschlossen, die Arbeit weiterzuführen. Ich habe das Template ein wenig modernisiert: akutelle Versionen von normalize.css eingebaut, den Code aufgeräumt und bereinigt, diverse CSS-Frameworks wie Bootstrap, Materialize und Skeleton eingebunden etc.

Die aktuelle Version des Blank Templates gibt es hier:

Für Support, Fehlermeldungen und Ähnliches bitte ich darum, den Issue-Tracker auf GitHub zu bemühen.


In English:

I’ve been using Bloggerschmidt’s Blank template as a base for my own ones, but since development seems to have stopped, I decided to create a fork and updated the whole thing a bit. Some improvements: current version of normalize.css, cleaned and re-organized code, added some CSS-Frameworks like Bootstrap, Materialize and Skeleton.

Grab the latest version of blank-template here:

Please use the GitHub issue tracker if you found a bug or need support.

Gallery CSS Slider Module

This is a simple responsive image slider module (altough it doesn’t slide, but fade) by It uses the awesome gallery CSS by Ben Schwarz.

Simply chose the categories you want to get your slider elements from, create some articles, assign them an intro image and you’re ready to go.


  • only about 2 KiB additional CSS (gzipped)
  • does not use any JS
  • easy to customize
  • fully responsive
  • free and open source (GPL v2)


How to add elements to the slider?

Simply create an article, assign an intro image and you’re good to go. Make sure your article matches all the filter criteria.

How to use advanced routing?

Create a menu element or select an existing one. Every link to the articles in the slider will be routed using this element.




Joomla! reCAPTCHA-Plugin in eigene Erweiterungen (Joomla 3/3.5/3.x) einbinden

Kürzlich habe ich ein Kontaktformular-Modul entwickelt, welches ich später noch vorstellen und frei verfügbar machen werde.

Um Spam zu vermeiden wollte ich das Joomla!-eigene Captcha-Plugin nutzen, was sich als gar nicht so einfach herausstellte. In der Dokumentation lässt sich dazu nichts finden. Es gibt zwar einen Thread dazu bei stackoverflow, aber die dort vorgestellte Lösung funktionierte nicht mit reCAPTCHA v2. Das Captcha wurde einfach nicht angezeigt. Also half hier ein Blick in die Datei „/plugins/captcha/recaptcha/recaptcha.php“.

Um das Captcha in eigene Erweiterungen (Komponenten und Modulen) einzubinden sind folgende Schritte nötig:

  1. Laden des Plugins
    (JEventDispatcher::getInstance())->trigger('onInit', 'dynamic_recaptcha_1');
  2. Einbinden des Captchas
    echo (JEventDispatcher::getInstance())->trigger('onDisplay', array(null, 'dynamic_recaptcha_1', 'class=""'))[0];
  3. Überprüfen des Captchas
    $res = (JEventDispatcher::getInstance())->trigger('onCheckAnswer',$_POST['recaptcha_response_field']);
        //captcha gelöst
        //captcha konnte nicht verifiziert werden