Webseiten und Zubehör Programmierung Umsetzung Pflege Backups Betreuung Joomla!®-Spezialist

Nach teils Umstellung eines Joomlas auf SSL (https) entdeckte ich ein altes Modul, das für einen internen Link hartkodiert http einsetzte. Kein Problem, da man ja einfach auf https umschreiben kann. Funktioniert mit beiden Protokollen ohne Browserwarnung. Da das Modul auch in Joomlas ohne SSL läuft, dann doch besser, das Scheme dynamisch zu ermitteln. Geht mit einem kleinen Schnipsel.

Eine alte Joomla 2.5.22 lief zwar noch, Backend noch erreichbar, aber FTP-Zugang war kaputt. Wenigstens die Datenbank sollte gerettet werden, aber Passwort für phpMyAdmin unbekannt. Nachdem die Seite eh mehr oder weniger futsch war, darf man sie auch selber hacken, um die Datenbank-Passwörter aus der configuration.php zu holen. Ausbaubare Grundidee.

Im Unterschied zum Joomla-Standard-Formularfeld folderlist, das die 1. Ordnerebene eines Verzeichnisses anzeigt und in den values der OPTIONs keinen Pfad enthält, hat folderlistghsvs 3 neue Attribute, um tieferliegende Ordner anzuzeigen und/oder die Pfade mitzuspeichern, je nach Kombination der volle, absolute Pfad oder ab Joomlaverzeichnis.

Wenn man ein eigenes Template entwickelt hat, will man vielleicht in den Einstellungen für die Templatestile im Backend die Optik etwas aufpeppen, um sich von anderen Templates abzusetzen, oder braucht einen JavaScript-Schnipsel für dieses oder jenes. Wie man das Nachladen von (nicht nur) CSS und JS mit einem eigenen JForm-Formularfeld einfach hinkriegt, zeigt dieses Crash-Tutorial.

Minifiziert JS- und CSS-Files nicht on-the-fly, wenn die Webseite geladen wird, sondern ist ein Helferlein, das man im Joomla-Backend bei Bedarf startet. Man kann beliebig viele Quelldateien eintragen und optional für jede eine komprimierte Ausgabedatei in beliebigem Joomla-Ordner festlegen. Welche der hinterlegten Dateien im aktuellen Lauf minifiziert werden sollen, lässt sich auswählen.

Während des Frühlings, Sommers, Herbst und Winters soll die Webseite optisch variiert werden. Oder innerhalb anderer selbst definierter Datums-Intervalle. Ein kurzes Joomla-Script hilft bei der Ermittlung der zugehörigen Periode anhand des aktuellen Datums. Am Beispiel eines Bildes, das ausgetauscht werden soll. Kann aber auch für Farb-Wechsel und anderes verwendet werden.

Nach dem JLayouts-Override im Isis Template bleiben die Filterfelder im Backend immer sichtbar

Mich nerven die Suchwerkzeuge im Backend. Weil sie immer verschwinden, wenn in den Filterboxen nichts ausgewählt ist oder, wenn man auf Zurücksetzen klickt. Diese wiederholte Klickerei, um sie wieder anzuzeigen kann man mit einem Joomla-Layout-Override abschaffen und den Suchwerkzeugebutton zugleich verstecken. Der Override wird für das ganze Backend mit Isis-Template angelegt.

Das joomlaeigene Modul Zufallsbild (mod_random_image) zeigt ein einzelnes Bild aus einem Ordner an. Wie der Name schon sagt, zufällig irgendeins. Mit einem einfach zu erstellenden Template-Override kann man es dazu bewegen tageweise (nach Datum) ein bestimmtes Bild anzuzeigen oder nach Kalendertag, Tag des Monats, Tag des Jahres, nach Monat usw. usf..

In Browsern kann man bei Klick auf einen Link bei gleichzeitigem Halten der Taste STRG das Linkziel in einem neuen Fenster bzw. neuen Tabulator öffnen. Leider im Joomla-Backend nicht immer. Ist man beispielsweise in einer Menüübersicht und klickt mit gehaltener STRG auf das Menü Inhalt > Beiträge öffnet sich im aktuellen Tab als auch im neuen die Beiträge-Übersicht. Nervt!

Diverse Tabulatoren im Backend offen. Alle gleich beschriftet. Früherer Joomla-Standard ohne Plugin.

In der Joomla-Administration wurde früher, weswegen ich dies Plugin schrieb, im Browser-Titel bzw. den -Tabulatoren immer zuerst der Seitenname angezeigt. Waren mehrere Tabs beim Arbeiten offen, war die Orientierung schwierig, welcher Tab was anzeigt. Überall der abgekürzte Seitenname. Joomla hat da nachgebessert. Trotzdem bietet dieses kleine Helferlein einen Ticken mehr an Variationen.

Damit diese Override-Zeilen funktionieren brauchen wir ein Plugin

Deutsches Tutorial inklusive Plugin-Download. Wie erstellt man ein eigenes, installierbares, einfaches Joomla-System-Plugin. Nötige Bestandteile / Dateien. Wie fügt man in Formularen (hier Kontaktformular) joomlakonform und updatesicher eigene Felder ein. Wie kann man den Emailtext abändern. Beschreibung der Dateiinhalte / Codes. Auch für mutige Anfänger geeignet, hoffe ich. By Re:Later

Joomla 3 versteht JHtml::core() nicht mehr

Nach Updates von Joomla 2.5 auf 3 schmeißen viele Templates eine Fehlermeldung der Art Fatal error: Call to undefined method JHtml::core() in /com_weblinks/category/default_items.php. Meist sind Overrides im 2.5-er-Template schuld, die ungültigen Code enthalten. Möchte man sein altes Template erst mal weiterverwenden, hilft ein einfacher Fix. Man muss nur eine Zeile austauschen.

Auf meiner Seite sind Structured Data (Rich Snippets) als JSON-LD per eigenem Plugin integriert, da mir das Microdata-Format Joomlas zu unflexibel ist. JSON-LD wird im HEAD per SCRIPT-Tags eingefügt. Darin auch der gesamte Artikeltext. Bevor Mobilgeräte explodieren, weil sie den unsichtbaren Text doppelt laden müssen, brauchte ich Code, um die Structured Datas nur Robots zu zeigen.

Oft ist die Datenbanktabelle #__redirect_links mit 1000en Einträgen gefüllt (mehrere MB), wenn man lange nicht in die Joomla-Komponente Umleitung (com_redirect) reingesehen hat oder nur versehentlich das Plugin aktiviert hat, das die 404-Links sammelt. Löschen im Backend kann zeitaufwendig sein, wenn das Auflisten aller Einträge wegen der Serverleistung nicht möglich ist.

Wie man neue Modulpositionen in Joomla anlegt ist hundertfach im Netz beschrieben und abgeschrieben. Aber wie schafft man es jetzt mittels Bootstrap 2 mehrere, verschiedene Module an einer Position nebeneinander anzuzeigen oder mehrere Modulpositionen in einer Reihe anzuordnen. Gar nicht so schwer, wenn man bis zwölf zählen und rechnen kann.

Kürzlich bin ich auf eine Forums-Antwort des befreundeten Re:Later gestoßen, mit Code wie man in Joomla unerwünschte JavaScript-Links entfernen kann, damit sie nicht im HEAD des Templates geladen werden. Joomla sammelt diese erst in diversen Erweiterungen zusammen, bevor sie in den Quelltext der Webseite eingesetzt werden. Sein Code ist nicht ganz rund.

Whoi is online im Frontend anzeigen

Ein einfach gehaltenes Who-is-online-Skript, mit dem man den aktuellen Anmelde-Status der registrierten Besucher im Frontend anzeigen lassen kann. Ich binde ihn mit dieser Technik in diesen Beitrag ein: Mit Modulstil eigene PHP-Dateien einbinden. Der Code funktioniert natürlich auch in eigenen Erweiterungen, Overrides oder mit einer der Joomla-Erweiterungen zum Einbinden von PHP.

Unfertiges "Tutorial", aber der Code klappt schon mal so weit

Vorausssetzung: Mindestens 1 registierter Joomla-User.

Möglichkeit im Frontend das eigene Profil zu bearbeiten.

Aktiviertes Plugin Benutzer - Profile

Wie verwendet man Modulstile? Wodurch unterscheiden sie sich? Wie eigene?

Auch der Anfänger findet hier Hinweise, was Modulstile in Joomla überhaupt sind. Warum wird mal ein Titel angezeigt, warum mal nicht? Warum ändern gelegentlich Modul-Einstellungen im Backend nichts im Frontend? Wie man einen eigenen Modulstil anlegen kann. So Zeugs.

Gelegentlich möchte man z.B. in einen Joomla-Beitrag eigenen, dynamischen PHP-Code einfügen. Man kann 3rd-Erweiterungen verwenden (und sich einarbeiten), und / oder muss Codes erst unschön umschnitzen, damit sie die Methoden des Joomla-Frameworks nutzen können. Mittels eigenem Modulstil und dem Joomla-Plugin loadmodule sind solche Hacks unnötig. Die Einrichtung ist nicht schwer.