project-Objekt
Das project-Objekt bietet Ihnen Zugriff auf projektbezogene Einstellungen und Funktionen.
- assetsCss()
- assetsJs()
- bundleCss()
- bundleJs()
- canContainer
- charset
- extraMenu
- getArticle
- getArticlesWithStyle()
- getFile()
- getImage()
- getPage()
- outputFolder
- rss
- serverFolder
- showCreatorOverlay
- showCreatorText
- showLegalText
- url
- webFonts()
- webFontFamilies
- getAlbumImages()
- getAttribute
- setAttribute
- relativePathFromTo
- imageDescription
- imageAltText
assetsCss()
Syntax: project.assetsCss()
Rendert den kompletten Bundle-HTML-Code, also inklusive CSS-Tags. Funktioniert nur für Nicht-Bundles.
Beispiel:
<$= project.assetsCss() $> Wenn diese Beispielcode im HTML-Head der Seite eingefügt wird, wird beim Erstellen der Seite ein entsprechender Code in der Form
<link rel="stylesheet" type="text/css" href="..." />
in der erstellten HTML-Seite erzeugt. Je nach Anzahl der CSS-/Less-Dateien werden mehrere CSS-Tags erstellt.
assetsJs()
Syntax: project.assetsJs()
Rendert den kompletten Bundle-HTML-Code, also inklusive Skript-Tags. Funktioniert nur für Nicht-Bundles.
Beispiel:
<$= project.assetsJs() $> Wenn diese Beispielcode im HTML-Head der Seite eingefügt wird, wird beim Erstellen der Seite ein entsprechender Code in der Form
<script src="..." type="text/javascript"></script>
in der erstellten HTML-Seite erzeugt. Je nach Anzahl der JavaScript-Dateien werden mehrere Skript-Tags erstellt.
bundleCss()
Syntax: project.bundleCss()
Rendert den kompletten Bundle-HTML-Code, also inklusive CSS-Tags. Funktioniert nur für Bundles.
Beispiel:
<$= project.bundleCss() $> Wenn diese Beispielcode im HTML-Head der Seite eingefügt wird, wird beim Erstellen der Seite ein entsprechender Code in der Form
<link rel="stylesheet" type="text/css" href="..." />
in der erstellten HTML-Seite erzeugt. Auch bei mehreren CSS-/Less-Dateien wird immer nur ein CSS-Tag erstellt.
bundleJs()
Syntax: project.bundleJs()
Rendert den kompletten Bundle-HTML-Code, also inklusive Skript-Tags. Funktioniert nur für Bundles.
Beispiel:
<$= project.bundleJs() $> Wenn diese Beispielcode im HTML-Head der Seite eingefügt wird, wird beim Erstellen der Seite ein entsprechender Code in der Form
<script src="..." type="text/javascript"></script>
in der erstellten HTML-Seite erzeugt. Auch bei mehreren JavaScript-Dateien wird immer nur ein Skript-Tags erstellt.
canContainer
Syntax: project.canContainer
Gibt an, ob das aktuell im Projekt ausgewählte Layout Container unterstützt (true) oder nicht unterstützt (false).
charset
Syntax: project.charset
Die Zeichencodierung, in der die HTML-Seiten erstellt werden.
Beispiel:
<meta charset="<$= project.charset $>" /> Gibt
<meta charset="utf-8" />
aus.
extraMenu
Syntax: project.extraMenu : extraMenu
getArticle
Syntax: project.getArticle( id : string ) : article
getArticlesWithStyle()
Syntax: project.getArticlesWithStyle(styleName)
Ermittelt einen Artikel mit dem angegebenen Widget-Stil.
Liefert eine Liste von 0..n Artikeln vom Typ article zurück. Über die Liste kann mit einer for-Schleife iteriert werden:
countist die aktuelle Anzahl von Artikeln in der Liste.item(index)liefert den Artikel am angegebenen Index (0-basiert).
Beispiel:
var items = project.getArticlesWithStyle("warenkorb-onlineshop-konfiguration");
for ( var g=0; g < items.count; ++g ) {
var item = items.item(g);
if ( item.active ) {
basketArticle = items.item(g);
break;
}
}
Ermittelt alle Artikel mit dem Widget-Stil "warenkorb-onlineshop-konfiguration".
getFile()
Syntax: project.getFile(id)
Ermittelt das Objekt zu einem Datei-Link (z.B. einer PDF-Datei) mit der ID oder Objekt-ID id. Gibt null zurück, wenn der Datei-Link nicht gefunden wird.
Das zurückgegebene Objekt verfügt über folgende Eigenschaften:
path- Der relative Pfad zur Datei, ausgehend von der aktuellen Seite. Z.B. "/media/files/my-download.pdf".
Beispiel:
var mp3id = project.getFile(article.value("file-mp3", "")) Setzt die Variable mp3id auf eine im aktuellen Artikel ausgewählte MP3-Datei.
getImage()
Syntax: project.getImage(id)
Ermittelt das Objekt zu einer vom Benutzer eingefügten Bild-Datei mit der ID oder Objekt-ID id. Gibt null zurück, wenn das Bild nicht gefunden wird.
Das zurückgegebene Objekt verfügt über folgende Eigenschaften:
contentCopyPath- Der relative Pfad zur Bild-Datei, ausgehend von der aktuellen Seite. Z.B. "/media/Images/my-image.png".contentCopyWidth- Die Breite des Bildes in Pixel.contentCopyHeight- Die Höhe des Bildes in Pixel.
Beispiel:
<$
var imageId = article.value("Bild");
var image = project.getImage(imageId);
$>
<img
src="<$= image.contentCopyPath $>"
width="<$= image.contentCopyWidth $>"
height="<$= image.contentCopyHeight $>" /> Gibt ein vom Benutzer im aktuellen Artikel ausgewähltes Bild aus.
getPage()
Syntax: project.getPage(id)
Ermittelt das Seiten-Objekt einer Seite mit der ID oder Objekt-ID id. Gibt null zurück, wenn die Seite nicht gefunden wurde.
Das zurückgegebene Objekt ist vom Typ page.
Beispiel:
var p = project.getPage(pageId); Ermittelt die Seite mit der ID oder Objekt-ID, die in der Variable pageId steht.
outputFolder
Syntax: project.outputFolder
Der lokale, absolute Pfad zum Ausgabe-Ordner des Projekts.
Beispiel:
var configFileName = "config.inc.php";
var configFilePath = project.outputFolder + "assets\\php\\" + configFileName;
var content = "...";
system.writeFile( configFilePath, content );
Schreibt den Inhalt der Variable content in die Datei "config.inc.php", im Ordner "assets\php\shop", relativ zum Ausgabe-Ordner.
serverFolder
Syntax: project.serverFolder
Der Ordner auf dem FTP-Server, so wie er vom Benutzer konfiguriert wurde. Z.B. "/" oder "/html_home".
showCreatorOverlay
Syntax: showCreatorOverlay : bool
showCreatorText
Syntax: project.showCreatorText : bool
showLegalText
Syntax: showLegalText : bool
url
Syntax: project.url
Die öffentliche URL der Website. Z.B. http://www.example.org.
webFonts()
Syntax: project.webFonts()
Rendert den kompletten HTML-Code, also inklusive CSS-Tags, aller im Projekt verwendeten Webfonts. Funktioniert für Bundles und Nicht-Bundles.
Beispiel:
<$= project.webFonts() $> Wenn diese Beispielcode im HTML-Head der Seite eingefügt wird, wird beim Erstellen der Seite ein entsprechender Code in der Form
<link href='//fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
in der erstellten HTML-Seite erzeugt. Je nach Anzahl der verwendeten Webfonts werden mehrere CSS-Tags erstellt.
Verfügbar ab Version 13
webFontFamilies
Syntax: project.webFontFamilies
Liefert eine Liste aller im Projekt verwendeten Webfont-Schriftart-Familien.
Beispiel:
<$
var fams = project.webFontFamilies;
for ( var i=0; i<fams.count; ++i ) {
var fam = fams.item(i);
// Gibt z.B. "Droid Sans" aus.
context.write(fam);
}
$> Verfügbar ab Version 13
getAlbumImages()
Syntax: project.getAlbumImages(id : string) : imageAsset[]
Ermittelt eine Liste von Projekt-Bilder, die im Bilderalbum mit der ID oder Objekt-ID id enthalten sind.
Wird das Album nicht gefunden, wird ein Fehler ausgelöst und die Verarbeitung abgebrochen.
Beispiel:
var albumId = article.value("album");
var images = project.getAlbumImages(albumId); Liest alle Bilder des vom Anwender ausgewählten Albums im aktuellen Artikel.
getAttribute
Syntax: project.getAttribute( attributeName : string, fallback : object = null ) : object
setAttribute
Syntax: project.setAttribute( attributeName : string, value : object )
relativePathFromTo
Syntax: project.relativePathFromTo( from : string, to : string ) : string
imageDescription
Syntax: project.imageDescription( id : string, format : string ) : string
imageAltText
Syntax: project.imageAltText( id : string, format : string ) : string