Klassen-Icons für die Administration definieren

Author: Ing. Michael Fürst (office@bluegate.at)
Web: http://www.bluegate.at
Publiziert: Juni 2008

Einleitung & Hinweise

Dieses Tutorial bezieht sich auf Version 4.0.0 von eZ Publish. Der Author übernimmt keine Gewähr für die Korrektheit dieses Tutorials und schließt jede Art der Haftung aus.

Problemstellung: Bei neuen Klassen wird immer das "Empty" Icon angezeigt

Jeder der schon mal eine neue Klasse zur Objektinstanzierung in eZ Publish angelegt hat weiß, dass diese Klasse in der Klassenübersicht sowie alle abgeleiteten Objekte anschließend mit dem "Empty" Icon (leeres Blatt Papier) gekennzeichnet werden. Wesentlich hübscher ist es natürlich, wenn hier ein individuelles Icon angezeigt wird. Dies ist beispielsweise bei den Klassen "article" oder "gallery" in der Standardinstallation der Fall.

Der Weg führt über ein .ini File

Und wie könnte es in eZ anders sein: Natürlich werden auch diese Icons über ein INI File an die jeweiligen Klassen gebunden. Die Icons selbst finden sich nach Größe und Anwendungsfall gegliedert in folgendem Verzeichnis:

/share/icons/crystal-admin/*

Der Pfad gilt natürlich nur, wenn in der Administration das Template "crystal-admin" zum Einsatz kommt. Ansonsten hier den jeweils anderen Pfad verwenden.

Auch das INI File findet sich in diesem Verzeichnis:

/share/icons/crystal-admin/icon.ini

In diesem File findet sich die Section [ClassIcons] in der die Klassen an die jeweiligen Icons gebunden wird:

....
[ClassIcons]
ClassMap[article]=mimetypes/document.png
ClassMap[article_standard]=mimetypes/document.png
ClassMap[comment]=mimetypes/txt2.png
...

Der Index hinter "ClassMap", also zB "article", "article_standard" und "comment" spiegeln den Klassen-Identifier wieder. Haben Sie nun beispielsweise eine neue Klasse "superartikel" angelegt, so können Sie diese ebenfalls mit dem Icon "document.png" versehen, indem Sie das INI File um folgende Zeile erweitern:

....
[ClassIcons]
ClassMap[article]=mimetypes/document.png
ClassMap[article_standard]=mimetypes/document.png
ClassMap[comment]=mimetypes/txt2.png
ClassMap[superartikel]=mimetypes/document.png
...

Sobald Sie das INI File gespeichert und veröffentlicht haben, sollte die neue Klasse nun stehts mit diesem Icon gekennzeichnet werden.

Hinweis: Sie müssen den eindeutigen Identifier der Klasse eintragen (nicht den Bezeichner)!