Joomla Tipps

Aus Mediawiki Ferdinand Gruber
Zur Navigation springen Zur Suche springen

Datenbank Prefix ändern

Joomla Konfiguration bearbeiten - Beispiel:

# configuration.php
public $dbprefix = 'joom4_';

Mit phpMyAdmin die Tabellen umbenennen

* Alle Tabellen markieren (auswählen)
* Dropdownliste: Tabellenprefix ersetzen

CSS Datei für den WYSIWYG Editor

Unter Linux kann man einen Symlink zur user.css im Site Template anlegen

So habe ich einen Link vom Administrator Child Template zum Cassiopeia Child Template angelegt
cd /srv/www/htdocs/joomlaProject/media/templates/site/atum_child
ln -s ../../../site/cassiopeia_child/css/user.css editor.css

Dann schaut die Seite im Editor so aus wie im Frontend, wenn man benutzerdefinierte CSS Stile verwendet.

Iframe Wrapper

Iframe Wrapper im Content

  • Wrapper Modul erstellen

Das Modul vom Typ Wrapper dient dazu fremdes HTML in einem Iframe darzustellen.

  • Position des Moduls angeben

Verwendet man eine im Template definierte Position, dann erscheint der Iframe an dieser Stelle der Joomla Website.

Man kann aber im Wrapper Modul eine eigene Position mit beliebigem Namen (z.B iframePosition) definieren. Mit Hilfe dieses Positionsnamens lässt sich dann das Wrapper Modul im Content platzieren.
  • Iframe im Beitrag positionieren

Folgende Zeile in den Beitrag einfügen:

{ loadposition iframePosition }

Der Positionsname bezieht sich auf obiges Beispiel.

Es gibt noch wietere Möglichkeiten, wie man ein Modul in einen Beitrag einbetten kann: https://docs.joomla.org

Iframe-Wrapper deaktiviert JQuery

Ich habe festgestellt, dass nach dem Laden einer Iframe-Wrapper Seite die Bootstrap-DropDown Menüs nicht mehr funktionieren. Anscheinend wird JQuery deaktiviert nach Laden des Iframe-Wrappers.

Es wird übrigens auch Jquery-UI deaktiviert.

Lösung:

In die index.php des Templates folgende Zeilen einfügen
JHtml::_('jquery.framework');
JHtml::_('jquery.ui', array('core'));

Iframe Wrapper und SSL

Nach Umstellung der Joomla Site auf SSL bzw. wenn Apache SSL erzwingt, werden IframeWrapper Seiten nicht mehr angezeigt.

Im IframeWrapper muss die Option Erweitert / Hinzufügen ausgeschaltet werden, sonst beginnt der Link immer mit http (statt https).

GET_Parameter an Wrapper übergeben

Override der Komponente Wrapper erstellen.

.../(child)template/html/com_wrapper/wrapper/default.php

Im folgenden Code unmittelbar vor dem Iframe werden einige Parameter an den Iframe-Wrapper übergeben, die dann von dem PHP Skript ausgewertet werden können.

// *******************************
// Parameter an Wrepper übergeben:
// *******************************
if ( strstr ($this->wrapper->url,"?")  ) $this->wrapper->url .= "&referer=joomla";
   else $this->wrapper->url .= "?referer=joomla";
      $user = JFactory::getUser();
      if ( $user->username ) $this->wrapper->url .=
         "&user=".$user->username.
         "&userfullname=".$user->name.
         "&groups=".implode(",",$user->get('groups'));
// *******************************  ?>
<iframe <?php echo $this->wrapper->load; ?>

Bilder ausrichten

Mit den Klassen

img-fulltext-left
img-fulltext-right

werden die Bilder entsprechend positioniert und bekommen automatisch einen Abstand zum umlaufenden Text.

Bilder untereinander anordnen

Das geht mit dem grafischen Editor nicht wirklich gut. Daher gehe ich so vor: Ich füge zuerst die Bilder in den Text irgendwo ein und bringe sie auf die richtige Größe. Dann erzeuge ich im HTML Modus einen DIV Container:

 <div style="width: 160px; float: left;">

 </div>

Zwischen diese obigen zwei Zeilen kopiere ich dann die Codezeilen der Bilder hinein, dann schaut das ganze etwa so aus:

  • linksbündig
<div style="width: 160px; float: left;>
<img src="images/stories/joomla-dev_cycle.png" width="150" />
<img src="images/stories/clock.jpg" width="150" />
</div>
  • rechtsbündig
<div style="width: 160px; float: right;">
<img src="images/stories/joomla-dev_cycle.png" width="150" />
<img src="images/stories/clock.jpg" width="150" />
</div>

Die Breite der Bilder width ist etwas weniger als die Breite des Containers, wie man sieht sieht.

Einfaches Datumsformat ohne Uhrzeit

Folgende Datei bearbeiten: language/de-DE/de-De.ini

# DATE_FORMAT_LC2=%A, den %d. %B %Y um %H:%M Uhr
DATE_FORMAT_LC2=%d. %B %Y

Angabe des Autors verkürzen

Folgende Datei bearbeiten: language/de-DE/de-De.com_content.ini

# WRITTEN BY=Geschrieben von: %s
WRITTEN BY=%s

Joomla Druckvorschau bzw. Druckausgabe formatieren

Die Druckvorschau wird durch das Skript component.php erzeugt:

/templates/system/component.php

Dafür wird die CSS Klasse contentpane verwendet. Für diese Klasse kann man in der CSS Datei des verwendeten Templates (template.css) Formatierungen festlegen, z.B.: eine Mindestbreite des Containers.

.contentpane {
    min-width: 720px;
}

Achtung: Die direkte Druckausgabe wird nicht über component.php gesteuert. Dazu muss im Head Bereich der index.php des Templates ein Verweis zu einer print.css eingefügt werden:

 <link rel="stylesheet" type="text/css" media="print" href="<?php echo $templateUrl; ?>/css/print.css" />

Kalender PopUP formatieren

  • Wochenanfang auf Montag legen
# /media/system/js/calendar-setup.js
param_default("firstDay",1);
  • SA und SO sichtbar machen

In folgender Datei in Zeile 46 den Farbwert #dedede durch #777777 ersetzen.

# /media/system/css/calendar-jos.css

Modulpositionen anzeigen

An die URL den Querystring ?tp=1 anhängen

Beispiel: http://t2792.greatnet.de/joomla_sieglinde?tp=1