Suche


Joomla 1.5 - Modulpositionen hinzufügen

Hin und wieder kommt es vor, dass man einfach zu wenig Positionen zur Verfügung hat, um Module im Joomla-Template zu platzieren. Oft findet man auch die Bezeichnungen nicht passend.
Um weitere Modulpositionen hinzuzufügen, erweitert man einfach die templateDetails.xml

Hier findet man den Teil (Knoten), in welchem die Positionen definiert werden. Einfach folgendermaßen vorgehen:

name_der_neuen_position

png-Filter und Joomla

Posted on | April 7, 2009 | No Comments
png-Filter und Joomla

Da ich gerade selbst an diesem Problem fast verzweifelt bin, möchte ich dies nun hier mal aufklären.

Um im IE6 transparente png darzustellen, verwendete ich z.B. bei einem Hintergrundbild folgende CSS-Anweisung

 filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale, src='bg.png');

Alles funktionierte prächtig, bis ich das ganze als Template für eine Joomla 1.5 Installation verwendete.
Sämtliche pngs wurden nicht mehr angezeigt und ich fand und fand keine Lösung.

Letztendlich brachte mich dann eine Webseite auf den trichter, dass es wohl an den SEO URLs liegen könnte.
Ein Test, bei welchem ich diese abschaltete brachte zwar nix, die angebotene Lösung probierte ich trotzdem.
Wichtig ist dabei, den kompletten Bildpfad anzugeben, da der Filter diese sonst offensichtlich nicht findet:

 filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale, src='http://www.meinedomain.de/images/bg.png');

Das half….

Joomla 1.5 - User importieren / Sichtbarkeit importierter User im Backend

Um User in eine Joomla 1.5 Installation zu importieren, kann man ein SQL-Statement benutzen. Egal aus welcher Quelle man die User holt, zuerst einmal müssen diese in die Tabelle jos_users.
Hier sollte man schon die passenden Usertypes (usertype) sowie Gruppen-IDs (gid) bedenken und mit eintragen.

Jetzt bleibt aber ein Problem: Die User werden nicht im Backend angezeigt, obwohl die Seitenummerierung schon auf die neuen User hindeutet.
Hier kommen die beiden Tabellen

josfr_core_acl_aro_groups
josfr_core_acl_groups_aro_map

ins Spiel.

In der ersten Tabelle muss für jeden neuen User eine ID angelegt werden. Diese Tabelle ist im Grunde selbsterklärend. In der zweiten Tabell muss diese neue ID nun mittels der gid einer Gruppe zugeordnet werden. Jetzt sind die User auch im Backend sichtbar und editierbar.

Buchtipp: Joomla Entwicklung und Erweiterung

Leider derzeit nur auf englisch ist dieses Buch doch ein echter Einblick in die Api von Joomla. Der Autor zeigt die Verwendung der Api anhand der Entwicklung von Modulen, Komponenten, Plugins für Joomla 1.5.

Einer Erweiterung von Joomla steht hiernach nichts mehr im Wege.
Weitere Infos:
Mastering Joomla! 1.5 Extension and Framework Development

Joomla 1.5 - Module überschreiben

Posted on | März 5, 2009 | No Comments
Joomla 1.5 - Module überschreiben

Seit Joomla 1.5 gibt es die Möglichkeit, die Templates der Module, welche für die Ausgabe zuständig sind, im eigenen Template zu überschreiben. Dies hat den großen Vorteil, dass man den Core-Code schont und bei einem Update nicht erneut in diesen eingreifen muss.

Die Module bzw deren Bausweise basieren auf dem MVC-Muster und erzeugen die Ausgabe über eine Template im Ordner tmpl.

Am Beispiel des Mainmenu -Modules sieht das dann so aus:

/modules/mod_mainmenu/tmpl/default.php

Um das Template default.php nun zu überschreiben, kopiert man es unter Einhaltung folgender Ordnerstruktur in das eigene Template:

/templates/eigenes_templates/html/mod_mainmenu/default.php

Wie man eine Komponente überschreibt, steht hier.

Webdesign Leipzig

Fehlermeldung bei Jooma-PopUp

Posted on | Februar 8, 2009 | No Comments
Fehlermeldung bei Jooma-PopUp

In manchen Fällen kommt es vor, dass man bei Joomla PopUps im Adminbereich nur leere Fenster angezeigt bekommt. Zum Beispiel beim Einfügen von Links oder bei der Anzeige des Quellcodes über den HTML-Button.

Im Seitentitel der PopUp-Fenster werden dann solche und ähnlich Meldungen angezeigt:

{$lang_insert_link_title}
{$lang_theme_code_title}

Dies liegt in vielen Fällen daran, dass man keine Weiterleitung von meine-domain.de auf www.meine-domain.de eingerichtet hat und man dann über die falsche Domain in den Administrationsbereich geht.
Hat man zum Beispiel in der Konfiguration die Domain www.meine-domain.de angegeben und geht über meine-domain.de in den Admin-Bereich, so kommt es zu dieser Fehlermeldung.

Änderungen beim Templating in Joomla 1.5

Bis zur Version 1.5 konnte man in Joomla mit einfachen Funktionsaufrufen wie z.B. mosShowHead() oder mosMainBody() die verschiedenen Inhalte ins Template bringen. Seit der Version 1.5 gibt es da einige Änderungen, von denen ein paar hier aufgeführt sein sollen:

$this->countModules(); //früher: mosCountModules();
  //früher: mosShowHead();
$this->template; //früher: $mosConfig_live_site;
 // früher: mosLoadModules ( 'user3', -1);
 // früher: mosMainBody();

FCKeditor einbauen und verwenden

Posted on | Februar 4, 2009 | No Comments
FCKeditor einbauen und verwenden

Als erstes sollte man sich den FCKeditor herunterladen, was man am besten hier tut:
Zum Download

Nun entpackt man das Archiv und lädt es in das Wurzelverzeichnis des Webspaces. Sollte man ein anderes Verzeichnis bevorzugen
so müssen die genannten Pfade eben angepasst werden.

Über folgende Zeile wird der Editor importiert:

include_once("fckeditor/fckeditor.php");

Dann muss eine Instanz des Editors in ein Formular verpackt werden, wozu man ersteinmal ein Formular generiert muss, in welches man
dann den Editor integriert. Der Submit-Button wird gleich mit angelegt:

Nun setzt man einfach den Editorcode ein, direk vor den Submit-Button:

$oFCKeditor = new FCKeditor('FCKeditor1');//Instanz erzeugen
$oFCKeditor->BasePath = 'fckeditor/';//Pfadangabe

$oFCKeditor->Value = $vorbelegung;//Hier kann das Editorfeld mit Text vorbelegt werden
$oFCKeditor->Create();//Editor erzeugen
$sValue = stripslashes( $_POST['FCKeditor1'] );

Klickt man nun auf den Submit-Button kann man mit $_POST['FCKeditor1'] arbeiten.

Kapselung in PHP / ab PHP5

Posted on | Februar 2, 2009 | No Comments
Kapselung in PHP / ab PHP5

Das objektorientierte Konzept der Kapselung hat seit der Version 5 in PHP Einzug gehalten. Ab PHP5 hat der Entwickler die Möglichkeit,
Attribute und Mehoden mit pbulic, protected und private zu verstecken.
Die Bedeutung der Schlüsselwörter ist wie folgt:

  • public
    Auf Variablen oder Methoden, die mit public deklariert sind, kann von jedem Benutzer der Klasse zugegriffen werden.
  • protected
    Auf Variablen oder Methoden, die mit protected deklariert sind, kann nicht von jedem Benutzer der Klasse zugegriffen werden.
    Allerdings ist der Zugriff über vererbte Klassen möglich.
  • private
    Auf Variablen oder Methoden, die mit private deklariert sind, kann nur innerhalb der Klasse, in welcher sie definiert wurden, zugegriffen werden.
    Auch der Zugriff über vererbte Klassen is hier nicht möglich.

PHP Vererbung

Posted on | Februar 2, 2009 | 1 Comment
PHP Vererbung

Das objektorientierte Konzept der Vererbung findet seit einiger Zeit auch bei PHP Anwendung, seit PHP 5 sowieso.
Vererbung wird immer dann eingesetzt, wenn man eine neue Klasse erstellen möchte, die ähnliche Eigenschaften und Methoden besizt, wie eine bestehende Klasse. Man setzt also die Vererbung ein, um die neue Klasse zu erweitern, ohne die Elternklasse zu ändern.
In PHP leitet man eine neue Klasse von einer bestehenden Klasse folgendermaßen ab:

class Neue_Klasse extends Alte_Klasse {

}

Das Schlüsselwort extends zeigt an, dass es sich um eine Ableitung handelt.
Es stehen automatische alle Eigenschaften und Funktionen der alten Klasse zur Verfügung.

In PHP5 gibt es allerdings noch die __contruct()-Methode, die bei der Intitialisierung einer Klasse immer aufgerufen wird, die aber
bei der Ableitung über extends extra in der neuen Klasse aufgerufen werden muss, und zwar so parent::construct(); :

class Neue_Klasse extends Alte_Klasse {
	function __construct() {
            parent::construct();
    }
}

Darüberhinaus ist es gut zu wissen, dass in PHP5 als private deklarierte Funktionen nicht vererbt werden.

« go backkeep looking »