Struktur der .info Datei
Der Syntax der .info Datei ist ähnelt dem der INI Datei. Die .info Dateien sind statische Textdateien, die Einstellungen zu einem Theme enthalten. Jede Zeile dieser Datei enthält Daten in der Form Schlüssel = Wert. Semikolons kommentieren eine Zeile aus. Es gibt Schlüssel mit eckigen Klammern, die eine Werteliste darstellen, also ein "array" in der Form Schlüssel[]. Sehen Sie sich als Beispiel die .info Dateien an, die mit Drupal geliefert werden.
Drupal kennt die unten aufgeführtem Schlüssel. Die Standartwerte für diese Schlüssel können Sie hier finden See the Ein Beispiel für ein Core Theme
- name !
- description *
- screenshot
- version *
- core !
- engine *
- base theme
- regions
- features
- stylesheets
- scripts
- php
- name (benötigt)
-
Der für Menschen leßbare Name des Themes. Dieser kann unabhängig vom maschinenlesbaren Namen angegeben werden und hat so weniger Einschränkungen für die Eingabe.
name = Un tema nombre de fantasía
- description (empfohlen)
-
Eine kurze Beschreibung des Themes. Diese Beschreibung wird für die Liste der Themes unter"Administer > Site building > themes" benutzt. Es wird empfohlen hier Englisch zu benutzen.
description = Tableless multi-column theme designed for blogs.
- screenshot
-
Hier kann ein optionales Bildschirmfoto angegeben werden, welches unter (admin/build/themes) benutzt wird. Wenn dieses Schlüsselwort nicht angegeben wird, benutzt Drupal, wenn es vorhanden ist, die Datei "screenshot.png" aus dem Verzeichnis des Themes.
Benutzen Sie dieses Schlüsselwort nur, wenn ihr Bildschirmfoto nicht"screenshot.png" heißt oder wenn sie einen Ort ausserhalb des Verzeichnis des Themes angeben wollen(z.B.
screenshot = images/screenshot.png
).screenshot = screenshot.png
- version (nicht empfohlen)
-
Die Angabe zur Version wird automatisch von Drupal ins Theme eingefügt, wenn es auf Drupal.org bereitgestellt wird. Von daher können Sie diesen Wert weglassen wenn Sie ihr Theme über Drupal.org veröffentlichen. Wenn Sie dies nicht tun macht es Sinn den Wert von Hand zu pflegen.
version = 1.0
- core (benötigt)
-
Ab Drupal 6 müssen alle Module und Themes angeben für welche Hauptversion von Drupal es gedacht ist. Dieser Wert wird mit der Konstanten DRUPAL_CORE_COMPATIBILITY verglichen. Wenn der Wert nicht übereinstimmt, wird das Theme deaktiviert.
core = 6.x
Das Drupal.org Paketsystem setzt diesen Wert automatisch auf Grundlage des angegebenen Werts bei der Kern Kompatibilität in ihrem Release Node. Von daher werden die Nutzer, die das Theme über Drupal.org beziehen immer den richtigen Wert bekommen. Wenn Seiten allerdings die Daten direkt aus dem CVS laden, hilft es, wenn Sie die Daten in die .info Datei Ihres Themes commiten. Dies ist auch ein guter Weg zu zeigen, zu welcher Version des Drupalkerns ihe CVS HEAD gehört.
- engine (empfohlen)
-
Die "Theme Engine" die für dieses Theme benutzt werden soll. Wenn nichts angegeben ist, wird angenommen, das dieses Theme seine eigene Implementation über eine ".theme" Datei mit bringt. Die meisten Themes benutzen allerdings den Standard "phptemplate".
Die Aufgabe von PHPTemplate besteht darin Theming-Funktionen und Template-Dateien zu entdecken und zu benutzen. Lassen Sie diesen Eintrag nur weg, wenn Sie wissen, was Sie tun.
engine = phptemplate
- base theme
-
Sub-themes können ein Base Theme also ein Eltern-Theme angeben. Dies erlaubt das Eigenschaften in das Sub-Theme, also an das Kind, vererbt werden können. Ein Sub-Themes kann auch von einem Sub-Theme erben, was eine kaskadierende Struktur erlaubt. Benutzen Sie den maschinenlesbaren Namen des Themes für diese Einstellung. Das folgende Beispiel ist aus Minelli, das Garland als Elternteil nutzt.
base theme = garland
Mehr unter Sub-themes, their structure and inheritance.
- regions
-
Um Regionen für Blöcke zu definieren wird das Schlüsselwort '
regions
' verwendet. Darauf folgt die interne Bezeichnung in maschinenlesbarer Form und umgeben voneckigen Klammern. Darauf folgt die Bezeichnung der Region nach einem Gleichheitszeichen.
Beispiel:
regions[theRegion] = The region name
.Wenn Sie eine Region angeben, verlieren Sie alle Standardeinstellungen und müssen alle verwendeten Regionen definieren.
Wenn keine Regionen angegeben wurden, werden folgende Regionen als Standard verwendet:
regions[left] = Left sidebar
regions[right] = Right sidebar
regions[content] = Content
regions[header] = Header
regions[footer] = FooterMehr dazu finden Sie unter Blöcke, Inhalt und Regionen.
- features
-
Verschiedene Elemente der Seite können durch Einstellungen des Themes an und ausgeschaltet werden. Sie können durch Schlüsselwörter in der .ini Datei einstellen, welche Elemente auf der Konfigurationsseite des Themes zu Verfügung gestellt werden. Dies ist nützlich um Optionen aus zu blenden, die das Theme nicht enthält. Um eine Checkbox zu unterdrücken, lassen Sie den Eintrag einfach weg. Wenn sie allerdings überhaupt keine "features" definieren, werden standardmäßig alle aktiviert.
Das Beispiel unten zeigt ihnen alle Elemente, die durch das Schlüsselwort "features" gesteuert werden können. Durch das auskommentieren von
primary_links
undsecondary_links
sind die zugehörigen Checkboxen nicht mehr für den Administrator zugänglich.features[] = logo
features[] = name
features[] = slogan
features[] = mission
features[] = node_user_picture
features[] = comment_user_picture
features[] = search
features[] = favicon
; Die letzten beiden Einträge sind auskommentier
; um ihre Anzeige zu verhindern.
; features[] = primary_links
; features[] = secondary_linksMehr dazu unter Custom theme settings.
- stylesheets
-
Typischerweise benutzen Themes die Datei style.css. Zusätzliche Stylesheets könnten mit der Funktion drupal_add_css() in der Datei template.php geladen werden. Seit Drupal 6 kann man aber auch mit der .info Datei zusätzliche Stylesheets definieren. Mit einem solchen Aufruf bewirkt man auch, das eine vorher angegebene CSS Datei von der in der .info Datei des Themes angegebenen überschrieben wird.
stylesheets[all][] = theStyle.css
Mehr dazu auf drupal.org unter style sheets.
- scripts
-
Bis her konnte man zusätzliche Javascript Dateien mit dem Aufruf von drupal_add_js() in der template.php Datei laden. Seit Drupal 6.x wird die Datei script.js automatisch geladen, wenn sie Ordner des Themes existiert. Themes können auch über die .info Datei zusätzliche Javascript Dateien laden:
scripts[] = myscript.js
Mehr dazu auf drupal.org unter JavaScript & jQuery.
- php
-
Mit diesem Eintrag wird die minimal benötigte PHP Version für das Theme definiert. Der Standard hierfür ist in der Konstanten DRUPAL_MINIMUM_PHP definiert, durch das auch das Minimum für den gesammten Kern bestimmt wird. Dies kann sich mit einer neueren Version ändern. Für die meisten Themes sollte diese Angabe weggelassen werden.
php = 4.3.3
Beispiel .info Dateien aus Themes des Kerns
Garland:
; $Id: garland.info,v 1.5 2007/07/01 23:27:32 goba Exp $
name = Garland
description = Tableless, recolorable, multi-column, fluid width theme (default).
version = VERSION
core = 6.x
engine = phptemplate
stylesheets[all][] = style.css
stylesheets[print][] = print.css
; Information added by drupal.org packaging script on 2008-02-13
version = "6.0"
project = "drupal"
datestamp = "1202913006"
Minnelli sub-theme of Garland.:
; $Id: minnelli.info,v 1.7 2007/12/04 20:58:44 goba Exp $
name = Minnelli
description = Tableless, recolorable, multi-column, fixed width theme.
version = VERSION
core = 6.x
base theme = garland
stylesheets[all][] = minnelli.css
; Information added by drupal.org packaging script on 2008-02-13
version = "6.0"
project = "drupal"
datestamp = "1202913006"
Bitte beachten Sie, das alles ab der Zeile "; Information added by drupal.org packaging script on 2008-02-13" und danach von der Drupal Paketverwaltung automatisch erstellt wird. Sie sollten niemals ein Projekt oder den Zeitstempel von Hand ändern. Der Versions-Schlüssel den Sie von Hand in der ersten Sektion hinzufügen ermöglicht Seiten ihr Theme zu benutzen, wenn es direkt aus dem CVS stammt.
- Anmelden oder Registrieren um Kommentare zu schreiben
Neue Kommentare
vor 2 Tagen 2 Stunden
vor 3 Tagen 20 Stunden
vor 3 Tagen 21 Stunden
vor 4 Tagen 1 Stunde
vor 4 Tagen 8 Stunden
vor 5 Tagen 21 Stunden
vor 6 Tagen 23 Stunden
vor 1 Woche 1 Stunde
vor 1 Woche 3 Tagen
vor 1 Woche 3 Tagen