Die Layout-Variablen

für die Liste aller Seiten

Administratoren, Entwickler von Skins

Variablenersetzungen in den Skin-Vorlagen werden alle durch die Funktion FmtPageName() aus pmwiki.php durchgeführt. PmWiki-Variablenersetzungen, auf die in den Seiten zugegriffen werden kann, werden durch die -Ersetzung aus stdmarkup.php gemanaged oder werden übergeordnet in local/config-Dateien definiert.

$ActionSkin
Dieses Array wird benutzt, um das aktuelle Skin zu überschreiben, wenn eine gegebene Aktion ausgeführt wird. Die gebräuchlichste Nutzung ist, $ActionSkin['print']='foo' zu setzen, um das 'foo'-Skin zum Drucken einzustellen, was auch immer sonst in der $Skin-Variable eingestellt ist.
$ActionTitleFmt
Dieses Array fügt einen Trenner und die aktuelle Wikiaktion (Anzeigen, Bearbeiten, Versionen, Hochladen ...) zum HTML-Titel der Seite (die $ActionTitle-Variable in $HTMLTitleFmt oder die Skin-Vorlage) ein. Per Voreinstellung ist das lokalisiert, aber Sie können das ändern:
$ActionTitleFmt['edit'] = ': $[Edit]'; # Benutzen Sie einen ":" Doppelpunkt als Trenner
$ActionTitleFmt['edit'] = ' $[Edit] '; # Leerzeichen als Trenner, kann am Anfang von $HTMLTitleFmt plaziert werden.
$WikiTitle
enthält den Wiki-Titel, so wie er in der Titelleiste des Browsers bzw. im Tab-Reiter angezeigt wird, z. B. "PmWiki"
$HTMLTitleFmt
Eine Variable, die den Inhalt des <title>...</title>-Elements in der Skin-Vorlage überschreibt. Hier können Sie das Format ändern, ohne die Skin-Vorlage zu bearbeiten. Zum Beispiel:
$HTMLTitleFmt = '$Title | $WikiTitle $ActionTitle'; # Seitentitel zuerst, dann den Titel $WikiTitle, dann die Aktion, also etwa "| Edit"; die Wikigruppe $Group ist ausgelassen.
$HTMLTitleFmt = '$Title | $GroupHomePageTitle'; # Seitentitel zuerst, dann den Titel der Gruppen-"Landingpage",siehe PageVariables.
$EnablePageTitlePriority
regelt, wie mehrfache (:title ...:)-Seiten-Direktiven gehandhabt werden (hinzugefügt in 2.2.9).
$EnablePageTitlePriority = 0; # PmWiki-Voreinstellung, der zuletzt eingestellte Titel gewinnt (der Titel könnte von Include-Seiten oder vom GroupFooter geändert werden).
$EnablePageTitlePriority = 1; # der erste Titel gewinnt; wenn ein Titel in der Seite definiert wird, kann er von Include-Seiten nicht überschrieben werden.
$EnableDiffInline
Auf 0 gesetzt, schaltet die Variable die Hervorhebung der geänderten Wörter in der Darstellung der Versionen einer Seite ab.
$EnableDiffInline = 0; # Farben abschalten, reine Textunterschiede anzeigen
$EnableRCDiffBytes
Wenn diese Variable auf 1 gesetzt wird, zeigen die "Aktuelle Änderungen"/"Alle aktuellen Änderungen"-Seiten die Differenz zur vorherigen Version der Seite in Bytes an, etwa (+123) oder (-42).
$EnableRCDiffBytes = 1; # Zeige den Byte-Unterschied zur vorigen Version an

:

Die Farben sind die gleichen wie in der Versionen-Seite; wenn Ihr Skin diese Farben nicht unterstützt, können Sie zur pub/css/local.css-Datei etwa Folgendes hinzufügen:
.diffmarkup { font-family:monospace; font-size: 0.9em; }
.diffmarkup del { background:#ff9; text-decoration: none; }
.diffmarkup ins { background:#9f9; text-decoration: none; }
$CurrentTime
Diese Variable enthält die aktuelle Zeit und das aktuelle Datum, formatiert mit $TimeFmt. Sie wird in Aktuelle Änderungen (vor 2.3.0) und Benutzersignaturen benutzt.
$CurrentLocalTime
Diese Variable enthält den Zeitstempel mit der aktuellen Zeit und dem aktuellen Datum, wie er in RecentChanges ('Aktuelle Änderungen') gespeichert wird (ab 2.3.0). Dieser Zeitstempel wird in der Greenwich Mean Time (UTC/GMT) im Wikiquelltext gespeichert, wird aber entsprechend der Variablen $TimeFmt in der Zeitzone des Wikis angezeigt. Wenn $EnableLocalTimes aktiviert ist, wird der Zeitstempel in der lokalen Zeit des Besuchers angezeigt. Das gleiche Format wird in Benutzersignaturen gespeichert, wenn $EnableLocalTimes aktiviert ist.
$EnablePmUtils
Diese Variable kontrolliert, ob das Skript pub/pmwiki-utils.js geladen werden soll oder nicht. Das Skript enthält JavaScript-Dienstfunktionen für das Inhaltsverzeichnis, die Syntaxeinfärbung, die Aktuellen Änderungen, die Email-Verschleierung und das Dark-Color-Theme. Standardmäßig ist $EnablePmUtils auf 1 gesetzt (aktiviert), aber die meisten ihrer Funktionen benötigen eine individuelle Aktivierung ($EnableLocalTimes, $EnableHighlight, $PmTOC, $LinkFunctions['mailto:'], $EnableCopyCode, $EnableSortable, $ToggleNextSelector, $EnablePmSyntax, $CustomSyntax, $EnableCopyCode, $EnableDarkThemeToggle). Setzen Sie diese Variable auf 0, um alle diese Funktionen zu deaktivieren.
$EnableDarkThemeToggle
Diese Variable aktiviert die Kernfunktion zum Umschalten des Dark-Color-Schemas, wenn das Skin dies unterstützt, siehe Cookbook:DarkColorScheme. Das kann in einer skin.php-Datei (als globale Variable) oder in der config.php-Datei geschehen:
$EnableDarkThemeToggle = 0; Dark-Theme-Umschaltung ist deaktiviert, selbst wenn das Skin sie unterstützt
$EnableDarkThemeToggle = 1; Dark-Theme-Umschaltung ist aktiviert, mit dem hellen Theme als Voreinstellung
$EnableDarkThemeToggle = 2; Dark-Theme-Umschaltung ist aktiviert, mit dem dunklen Theme als Voreinstellung
$EnableDarkThemeToggle = 3; benutze automatisch das vom Browser bevorzugte Theme
Siehe auch $ImgDarkSuffix
$EnableLocalTimes
(Voreinstellung: deaktiviert) Aktiviert die Umschreibung von Zeit und Datum mit der Zeitzone des Besuchers, siehe Dokumentation in Cookbook:LocalTimes. Die betroffenen Daten stehen in RecentChanges-Seiten, in Versionen-Seiten und in Benutzersignaturen.
$EnableLocalTimes = 2; Aktiviert lange lokale Zeit wie in MM/DD/YYYY HH:MM:SS.
$EnableLocalTimes = 1; Aktiviert kompakte lokale Zeit, entweder HH:MM (innerhalb von 24 Stunden), MM/DD oder DD/MM (innerhalb von 11 Monaten) oder DD/MM/YYYY, wenn die Zeit länger als 11 Monate zurückliegt. Das lange Format erscheint in einem Tooltip, wenn die Maus über dem kurzen Zeitformat verharrt.
$EnableLocalTimes = 3; Wie die kompakte lokale Zeit, aber bei einem Datum innerhalb von 11 Monaten wird MM'YY angezeigt.
$EnablePmSyntax
(nicht zu verwechseln mit $EnableHighlight) Wenn diese Variable auf 1 gesetzt wird, aktiviert sie die PmSyntax, eine farbliche Syntax-Hervorhebung für die PmWiki-Markup-Sprache, die die Dokumentation leicher lesbar macht (ab 2.3.0). Wenn diese Variable auf 2 gesetzt wird, aktiviert sie auch noch die experimentelle Syntax-Hervorhebung in der Bearbeiten-Seite:
$EnablePmSyntax = 1; # Hervorhebung in Dokumentationen
$EnablePmSyntax = 2; # beides, Dokumentation und Bearbeiten-Seite
if ($action=='edit') $EnablePmSyntax = 2; # nur Bearbeiten-Seite
$CustomSyntax
(ab 2.3.0) Ein Array, in dem eigenen Regeln für Syntax-Hervorhebung definiert werden können. Siehe Dokumentation in Cookbook:CustomSyntax.

:

$EnableHighlight
(nicht zu verwechseln mit $EnablePmSyntax) Wenn diese Variable auf 1 gesetzt wird, aktiviert sie die Kompatibilität mit der highlight.js-Bibliothek, die den Programmkode farblich hervorhebt. Zusätzlich müssen Sie diese Bibliothek einschließen und ihre Kodeblöcke mit dem Wikistil %highlight% markieren, siehe WikiStyles#highlight.
$EnableCopyCode
(Seit 2.3.21) Auf 1 gesetzt fügt dies eine [+]-Schaltfläche links oben von einem vordefinierten Block hinzu. Ein Benutzer, der darauf klickt, fügt den Text des vorformatierten Blocks zu seinem System-Klemmbrett hinzu:
$EnableCopyCode = 1; # add a [+] copy code button to pre blocks
$HTMLTagAttr
Dieser String enthält die Attribute des <html...>-Tags in der Layoutvorlage ('Skin template'), er ist standardmäßig leer. Um zum Beispiel ein "lang"-Attribut hinzuzufügen, setzen Sie das Folgende in Ihre config.php-Datei:
$HTMLTagAttr = 'lang="en" xml:lang="en"';
Damit die Variable in einer angepassten Vorlage wirkt, setzen Sie sie in der Vorlagendatei ein, z. B.:
<html xmlns="http://www.w3.org/1999/xhtml" $HTMLTagAttr>
$HTMLStylesFmt
Ein Array von CSS-Anweisungen, die bei der Seitenausgabe in den HTML-Kopf (<head>-Teil) eingefügt wird. Dies Array bietet einen einfachen Platz für Skripten, um spezifische CSS-Anweisungen hinzuzufügen.
$HTMLHeaderFmt
Ein Array aus HTML-Text, der in den <head>-Bereich eingefügt wird an der Stelle, wo die Skin-Vorlage eine <!--HTMLHeader-->-Anweisung enthält. Dieses Array bietet einen einfachen Platz für Skripten, um spezifische HTML-Header-Zeilen einzufügen.
Sie möchten zum Beispiel ein Favicon für alle Seiten Ihres Wikis einrichten (ein png-Bildchen für Firefox (und andere ...), ein 'ico' für den Internet-Explorer):
$HTMLHeaderFmt['favicon'] =
'<link href="http://path/to/icon.png" type="image/png" rel="icon" />
 <link href="http://path/to/icon.ico" type="image/x-icon" rel="shortcut icon" />';
Noch ein Beispiel: wenn Sie eine RSS-Benachrichtigung in einigen Browsern erreichen wollen (etwa das RSS-Icon in Firefox):
$HTMLHeaderFmt['rss'] =
'<link rel="alternate" type="application/rss+xml" title="Rss All recent Changes" 
 href="$ScriptUrl/Site/AllRecentChanges?action=rss" />';
Ein Javascriptbeispiel:
$HTMLHeaderFmt['das-javascript'] =
'<script>
   // der JavaScript-Kode
 </script>';
$HTMLFooterFmt
Wie $HTMLHeaderFmt oben, enthält diese Variable ein Array mit HTML-Text, der ziemlich am Ende der HTML-Seite an der Stelle eingefügt wird, die durch die <!--HTMLFooter-->-Direktive in der Skin-Vorlage bezeichnet ist (gewöhnlich direkt vor dem schließenden <body>-Tag). Das wird vornehmlich durch Skripten benutzt, um eine spezifischen HTML-Ausgabe am Ende der Seitenausgabe einzufügen.
$MetaRobots
setzt den Wert des <meta name='robots' ... />-Tags, das PmWiki erzeugt, um den Zugriff der Suchmaschinen-Roboter auf die Site zu regeln. PmWikis Voreinstellungen erlauben den Suchmaschinen nichts außer die reinen Textseiten zu indexieren (also z. B. nicht dem Link 'Bearbeiten' zu folgen), auch die Seiten der PmWiki-WikiGruppe wird nicht in die Suchmaschine aufgenommen. Setzt man $MetaRobots explizit, so werden diese Voreinstellungen überschrieben.
# diese Site niemals indexieren
$MetaRobots = 'noindex,nofollow';
# das Robots-Tag ganz und gar deaktivieren
$MetaRobots = '';
$MessagesFmt
Ein Array mit HTML-Text, der anstelle jeder (:messages keys=a,b details=open:)-Seitendirektive angezeigt wird. Gewöhnlich wird es benutzt, um Angaben bezüglich der Bearbeitung von Seiten auszugeben.
$RecentChangesFmt
Ein Array, das das Format für die Auflistung der 'Aktuellen Änderungen' angibt.
Der Schlüssel eines Arrayeintrags bezeichnet die Seite, wo Änderungen aufgezeichnet werden wie in
$RecentChangesFmt['$SiteGroup.AllRecentChanges']
Der Wert eines Arrayeintrags gibt das Format an, in dem die Änderungen aufgezeichnet werden wie in
'* [[{$Group}.{$Name}]]  . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]'
Beachten Sie die beiden aufeinanderfolgenden Leerzeichen vor den drei Punkten (. . .). Die beiden Leerzeichen trennen zwei Teile des Formats: der erste Teil ändert sich nicht (z. B. ein Verweis auf die geänderte Seite, der zweite Teil ändert sich (z. B. der Autor und das Datum der Änderung). Beim Speichern einer Seite, entfernt PmWiki eine Zeile, die auf den ersten Teil passt, und fügt eine Zeile hinzu mit dem aktuellen Format vor der ersten Zeile mit zwei Leerzeichen. Auf diese Weise bleibt jede Zeile ohne zwei aufeinanderfolgende Leerzeichen oben am Anfang auf der Änderungen-Seite.
Sie können das Folgende benutzen und anpassen, um das Format zu ändern (fügen Sie es in die config.php ein):
$RecentChangesFmt['$SiteGroup.AllRecentChanges'] = 
  '* [[{$Group}.{$Name}]]  . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]';
$RecentChangesFmt['$Group.RecentChanges'] =
  '* [[{$Group}/{$Name}]]  . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]';
Seit PMWiki 2.3.0 nutzt das Format standardmäßig $CurrentLocalTime. Das zeigt exakt das, was $CurrentTime früher zeigte. Wenn jedoch $EnableLocalTimes gesetzt ist, werden die Zeit und das Datum im lokalen Format und mit der Zeitzone des Besuchers umgeschrieben.
Beachten Sie, dass sich die Änderungen an dem Format nur auf neu Geschriebenes auswirken. Mit anderen Worten müssen Sie eine Seite editieren, damit Ihr neues Format sichtbar wird. Beachten Sie auch, dass Sie zwei Leerzeichen zwischen dem Seitennamen und den weiteren Informationen zu dem Text stehen haben müssen.
Beachten Sie außerdem, dass diese Variable weitere Nutzungen hat, wie überhaupt keine Änderungen an die Seiten 'Aktuelle Änderungen' und 'Alle Änderungen' zu melden, siehe PmWiki Questions. Mehr Informationen über das Anpassen der Aktuelle Änderungen-Seiten finden Sie hier: CustomRecentChanges
$RecentUploadsFmt
Ein Array, das das Format für hochgeladene Dateien in den 'Aktuellen Änderungen' angibt. Es ist ähnlich dem $RecentChangesFmt. Wenn es aktiviert wird, werden neue hochgeladene Dateien in den 'Aktuellen Änderungen' geloggt. Voreinstellung ist inaktiv. Siehe Cookbook:RecentUploadsLog für weitere Informationen. Siehe auch $EnableRecentUploads.
$EnableRecentUploads
Wenn diese Variable auf 1 gesetzt ist und $RecentUploadsFmt nicht gesetzt ist, aktiviert sie die Anzeige der Anhänge in einem Standardformat nur in der Seite Site.AllRecentChanges (Alle aktuellen Änderungen). Das wurde in 2.3.0 hinzugefügt, um die Möglichkeit leicht mit einigen Standardeinstellungen zu aktivieren, die für die meisten Wikis gut passen könnten.
$DraftRecentChangesFmt
Ein Array mit dem Format für die 'Aktuellen Änderungen', wenn ein Entwurf gespeichert wird.
$RecentChangesFmt wird auf $DraftRecentChangesFmt gesetzt, wenn ein Entwurf gespeichert wird. So können Sie z. B. die Entwürfe in einer gesonderten 'Aktuelle Änderungen an Entwürfen'-Seite (engl.: Recent Draft Changes page) auflisten anstatt auf der 'Aktuelle Änderungen'-Seite der Gruppe:
$DraftRecentChangesFmt['$Group.RecentDraftChanges'] =
  '* [[{$Group}/{$Name}]]  . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]';
$DraftRecentChangesFmt['$Group.RecentChanges'] = '';
$RCLinesMax
Die maximale Zahl an Zeilen, die in der 'Aktuelle Änderungen'-Seite gespeichert werden. Der Standard ist 0, das bedeutet unendlich.
          $RCLinesMax = 1000;       # verwalte höchstens 1000 aktuelle Änderungen
$PageRedirectFmt
Der Text, der angegeben wird, wenn eine Seite via (:redirect:)-Anweisung umgeleitet wurde.
$PageRedirectFmt = '<p><i>redirected from $FullName</i></p>';
$PageRedirectFmt = '';
Für Anzeigeoptionen siehe auch die FAQ auf PageDirectives.
$WikiStyle
Ein Array, das die vordefinierten WikiStile enthält, die man auf einer Textseite einsetzen kann.
Siehe PmWikiDe.CustomWikiStyles
$WikiStyleApply
Ein Array, das den Geltungsbereich der Wikistile per HTML-Elementen definiert. Standardeinstellungen sind:
'item' => 'li|dt',
'list' => 'ul|ol|dl',
'div' => 'div',
'pre' => 'pre',
'img' => 'img',
'block' => 'p(?!\\sclass=)|div|ul|ol|dl|li|dt|pre|h[1-6]',
'p' => 'p(?!\\sclass=)'
Dies definiert, dass wir Wikistile ausdehnen können auf
  • LI-Elemente mit dem Schlüsselwort item
  • UL-, OL-, DL-Elemente mit dem Schlüsselwort list
  • etc.
Ein Beispiel für die Ausdehnung des Geltungsbereiches auf ein LI-Element steht hierunter. Für weitere Informationen sei verwiesen auf den Abschnitt Gültigkeitsbereich.
* %apply=item red%Hier ist ein rotes Listensymbol
* Dies Item enthält keinen Stil
* %red%Hier ist nur der Text rot, das Listensymbol aber nicht
  • Hier ist ein rotes Listensymbol
  • Dies Item enthält keinen Stil
  • Hier ist nur der Text rot, das Listensymbol aber nicht
Sie können zusätzliche HTML-Elemente zu $WikiStyleApply hinzufügen, um Wikistile auf andere HTML-Elemente auszudehnen, zum Beispiel um Stile auf Tabellenzeilen oder Anker-Tags auszudehnen.
$WikiPageCSSFmt
Diese Variable enthält einen Seitennamen, wo Sie CSS-Regeln hinzufügen können, die auf spezifische Seitenmuster angewandt werden (normalerweise deaktiviert). siehe Cookbook:LocalCSS als Beispiel.
$WikiPageCSSFmt = 'Site.LocalCSS'; # globale Site.LocalCSS-Seite
$WikiPageCSSFmt = '{$Group}.LocalCSS'; # gruppenbezogene LocalCSS-Seite
$WikiPageCSSVars
Wenn eine 'Wiki-CSS-Seite' mit $WikiPageCSSFmt aktiviert wurde, ist dies ein Array mit globalen PHP-$Variablen, die als Präprozessor-@Variablen in jener Seite verfügbar sind. Gewöhnlich enthält das Array: 'FarmPubDirUrl', 'PubDirUrl', 'Skin', 'action', 'SkinDirUrl'.
$EnableSelfWikiPageCSS
Wenn eine "Wiki-CSS-Seite" mit $WikiPageCSSFmt aktiviert wurde, wird das in ihr definierte CSS nicht auf sie selbst angewendet, wenn sie angesehen oder bearbeitet wird. Falls ein schwerwiegender Fehler in den CSS-Stilen gemacht wurde und die Site dadurch unbenutzbar wird, ist diese Seite immer noch ansehbar und bearbeitbar. Wer mit CSS vertraut ist, kann diese Variable auf 1 setzen und die Stile werden auch auf die Seite selbst angewandt, auch im "Vorschau"-Modus:
$EnableSelfWikiPageCSS = 1; # Wende Stile auf die "Wiki-CSS-Seite" selbst an
$PmTOC
Aktiviere und konfiguriere das eingebaute automatische Inhaltsverzeichnis (TOC), siehe Inhaltsverzeichnis.
$PmTOC['Enable'] = 1; # Aktiviere TOC; (normalerweise 0, deaktiviert).
$ToggleNextSelector
Ein CSS-Selektor aktiviert das interaktive Öffnen (und Schließen) verborgener Abschnitte, siehe Cookbook:ToggleNext. Standardmäßig ist das deaktiviert.
$MaxIncludes
kontrolliert die Zahl von Einfügungen, die Seiten mit Hilfe von (:include:)- und anderen Anweisungen machen können, das wird genutzt, um endlose Rekursionen in den Griff zu bekommen. $MaxIncludes ist auf 50 gesetzt, kann aber vom Wikiadministrator auf jeden beliebigen Wert gesetzt werden.
$MaxIncludes = 50;            # Standard
$MaxIncludes = 1000;          # erlaubt viele Einfügungen
$MaxIncludes = 0;             # unterbindet Einfügungen 
$Skin
listet den (die) Namen von Skins auf, die geladen werden sollen, es sei denn, durch $ActionSkin wird das überschrieben. Normalerweise enthält $Skin einen einzigen String, der den Namen eines Skinverzeichnisses enthält, aber es kann auch ein Array von Namen sein, wobei dann das erste gefundene Skinverzeichnis aus der Liste benutzt wird.
$SkinDirUrl
wird in scripts/skins.php auf die Basis-Url des Verzeichnisses des aktuellen Skins gesetzt (z. B. innerhalb des 'pub/skins/'-Verzeichnisses). Die Variable wird typischerweise innerhalb einer .tmpl-Datei eines Skins benutzt, um Zugriff auf .css-Dateien und grafische Elemente zu erhalten, die mit dem Skin verbunden sind.
$SkinLibDirs
Ein Array, das die passende Url liefert (Arrayeintrag-Wert), wenn man es mit dem Dateisystempfad zu einem Skin (oder zu einem Verzeichnis mit mehreren Skins) füttert (Arrayeintrag-Schlüssel).
Der Schlüssel ist das Verzeichnis, das die 'skin.tmpl'- und die 'skin.php'-Datei enthält, wie sie das PmWiki-Programm sieht.
Der Wert ist die Url (Webadresse) des Verzeichnisses, das die .css-, .gif- und andere Dateien enthält, die in den HTML-Kode eingebettet sind, der von PmWiki an den Browser geschickt wird. Dies Verzeichnis muss öffentlich zugänglich sein.
per Standard ist das Verzeichnis gesetzt auf:
$SkinLibDirs = array(
  "./pub/skins/\$Skin" => "$PubDirUrl/skins/\$Skin",
  "$FarmD/pub/skins/\$Skin" => "$FarmPubDirUrl/skins/\$Skin");
Extradetails: Wenn PmWiki nach einem Skin sucht, schaut es unter den Arrayschlüsseln nach einem Verzeichnis, das nach dem Skin benannt ist, und wenn es das findet, wird PmWiki dann die Dateien in diesem Verzeichnis und auch die Dateien unter der korrespondierenden Url (Arraywert) nutzen. Diese beiden zeigen normalerweise auf das gleiche öffentlich zugängliche Verzeichnis, sie müssen es aber nicht.
$SkinTemplateIncludeLevel
Soviele Level sind für das Einfügen von weiteren Vorlagendateien in eine Skinvorlagen mit der Direktive <!--IncludeTemplate:...--> erlaubt. Normalerweise ist diese Direktive deaktiviert. Wenn die Variable auf 1 gesetzt ist, ist ein Level erlaubt, auf 2 gesetzt darf eine eingefügte Vorlage selbst mittels der Direktive eingefügte Vorlagen enthalten. Es kann bis zu 10 Level geben. Diese Variable kann entweder in der local/config.php-Datei oder direkt in Ihrer Skindatei pub/skins/mein-skin/mein-skin.php (mittels SDV) definiert werden.
  # in config.php, erlaube ein Level
  $SkinTemplateIncludeLevel = 1;

  # in mein-skin.php, erlaube drei Level
  SDV($GLOBALS['SkinTemplateIncludeLevel'], 3);
$PageLogoUrl
ist die Url, die auf ein Logobild verweist, das die meisten Skins irgendwo auf der Wikiseite im Kopf anzeigen, (meistens oben links), z. B. "/pmwiki/pub/skins/pmwiki/pmwiki-32.svg"
$EnablePathInfo
beeinflusst das Handling der Seiten-Urls. Wenn sie auf 1 gesetzt wird, ist die Url ...wiki.php/Main/Main, wenn sie auf 0 (Standard) gesetzt wird, ist die Url ...wiki.php?n=Main.Main.
$EnableFixedUrlRedirect
Wenn PmWiki nur einen Teil eines Seitennamen erhält (z. B. nur den Gruppennamen), benutzt es $EnableFixedUrlRedirect, um daraus einen vollständigen Seitennamen zu machen, dann sendet es ein "redirect" an den Browser, um ihn zu veranlassen, die Seite mit dem vollständigen Seitennamen aufzurufen. Setzt man $EnableFixedUrlRedirect = 0, blockiert man diese Umleitung, so dass PmWiki weiterhin mit dem angegebenen Seitennamen arbeitet statt ein Redirect zu veranlassen.

$GroupHeaderFmt
definiert die HTML-Einfügung am oberen Rand jeder Seite. Der Standardwert ist:
        $GroupHeaderFmt = '(:include {$Group}.GroupHeader self=0 basepage={*$FullName}:)(:nl:)';

$GroupPrintHeaderFmt
definiert die HTML-Einfügung am oberen Rand jeder Seite, wenn action=print aktiv ist. Der Standardwert ist:
        SDV($GroupPrintHeaderFmt,'(:include $Group.GroupPrintHeader basepage={*$FullName}:)(:nl:)');

$GroupFooterFmt
definiert die HTML-Einfügung am unteren Rand jeder Seite. Der Standardwert ist:
        $GroupFooterFmt = '(:nl:)(:include {$Group}.GroupFooter self=0 basepage={*$FullName}:)';

$GroupPrintFooterFmt
definiert die HTML-Einfügung am unteren Rand jeder Seite, wenn action=print aktiv ist. Der Standardwert ist:
        SDV($GroupPrintFooterFmt,'(:nl:)(:include $Group.GroupPrintFooter basepage={*$FullName}:)');
$PageNotFoundHeaderFmt
gibt den HTTP-Header an, der gesendet wird, wenn eine nicht existierende Seite angefordert wurde. Einige Webserver (namentlich Microsofts "Personal Web Server") erfordern, dass diese Variable angepasst wird, damit sie funktioniert.
# default
$PageNotFoundHeaderFmt = 'HTTP/1.1 404 Not Found';
# return all pages as found
$PageNotFoundHeaderFmt = 'HTTP/1.1 200 Ok';

Vorsicht vor der Erwartung, es werde der Inhalt von Gruppen-(Headern|Footern) ausgegeben bei einer nicht existierenden Seite. Standardmäßig antwortet PmWiki mit 404 (da ja die Seite nicht existiert), ungeachtet dessen, dass ein bißchen was anzuzeigen ist. Firefox zeigt den Inhalt, wohingegen der Internet-Explorer seine eigene 404-Seite anzeigt. $PageNotFoundHeaderFmt MUSS auf die Rückgabe von 200 eingestellt werden, damit das erwartete Verhalten von allen Browsern gezeigt wird.

$HTMLVSpace
Wenn Sie $HTMLVSpace = ''; in einer lokalen Anpassungsdatei (z. B. local/config.php) setzen, verhindern Sie die Einfügung von abstanderzeugenden Absätzen (<p class='vspace'></p>) im erzeugten HTML-Kode. Um diese Änderung auf ein einziges Skin zu begrenzen, fügen Sie die $HTMLVSpace = '';-Anweisung in eine skin.php-Datei ein und stellen noch die global $HTMLVSpace;-Anweisung voran.
$EnablePreserveLineBreaks
$HTMLPNewline
Diese Variable erlaubt, Zeilenumbrüche als Standard zu setzen, d. h. ohne die Direktive (:linebreaks:) in die Seite oder einen Gruppenkopf (GroupHeader) einfügen zu müssen. Um Zeilenumbrüche als Standard zu setzen, fügen Sie Ihrer config.php-Datei eine der folgenden Zeile hinzu:
$EnablePreserveLineBreaks = 1; # äquivalent zu:
$HTMLPNewline = '<br/>';
$SimpleTableDefaultClassName
Diese Variable kann einen (Standard-)Klassennamen aufnehmen, der dann für Einfache Tabellen gilt, wenn in der Wikiseite kein "class="-Attribut gesetzt ist (standardmäßig nicht gesetzt):
$SimpleTableDefaultClassName = "wikisimpletable";
Siehe in PITS:00638 nach Beispielkode.
$EnableSimpleTableRowspan
Setzen Sie diese Variable auf 1, um die Vorteile des Kochbuchrezeptes Cookbook:RowspanInSimpleTables nachzubilden (gewöhnlich deaktiviert, ab 2.3.37 gewöhnlich aktiviert):
$EnableSimpleTableRowspan = 1; # Siehe Rezept
$EnableSortable
Setzen Sie diese Variable auf 1, um sortierbare Tabellen zu aktivieren, siehe einfache sortierbare Tabellen (normalerweise deaktiviert, ab 2.3.37 normalerweise aktiviert):
$EnableSortable = 1; # aktiviere sortierbare Tabellen
$TableCellAttrFmt
Für Tabellen werden die HTML-Attribute definiert, die jeder <td>- oder <th>-Zelle mitgegeben werden. Kann Referenzen enthalten auf $TableCellCount, was die Spaltennummer der aktuellen Zelle enthält.
$TableCellAlignFmt
Für Tabellen, definiert die Tabellenattribute zum Ausrichten aller <td>- oder <th>-Zellen. Voreinstellung ist " align='%s'", wobei %s ersetzt wird durch 'center', 'left' oder 'right'. Für eine gültigen HTML5-Ausgabe möchten Sie dies vielleicht in der config.php-Datei ändern in
$TableCellAlignFmt = " class='%s'";
und dann die CSS-Klassen td.center, td.left und td.right einrichten (entsprechend für th).
$TableRowAttrFmt
Für Tabellen werden die HTML-Attribute definiert, die jeder <tr>-Zeile in der Ausgabe mitgegeben werden. Kann Referenzen enthalten auf $TableRowCount, der absoluten Gesamtzahl der Zeilen der Tabelle, oder $TableRowIndex, das eine fortlaufende Nummer für jede Zeile liefert von 1 bis $TableRowIndexMax.
# Gib jeder Zeile eine einzigartige CSS-Klasse, 
# basierend auf der Zeilennummer (tr1, tr2, tr3, ... )
$TableRowAttrFmt = "class='tr\$TableRowCount'";
# Gib den Zeilen alternierende CSS-Klassen (ti1, ti2, ti1, ti2, ti1, ... )
$TableRowIndexMax = 2;
$TableRowAttrFmt = "class='ti\$TableRowIndex'";
$TableRowIndexMax
Der Maximalwert für $TableRowIndex in Tabellen.
# Setze Zeilenindices als 1, 2, 3, 1, 2, 3, 1, 2, ...
$TableRowIndexMax = 3;
Siehe hierzu auch $TableRowAttrFmt
$EnableTableAutoValignTop
erweiterte Tabellen sind gedacht für das Layout und fügen automatisch das valign='top'-Attribut ein, wenn in der Quelle kein valign-Attribut definiert ist. Wenn Sie in der config.php-Datei diese Variable auf 0 setzen, verhindern Sie diese automatische Hinzufügung.
$EnableTableAutoValignTop = 0; # schalte automatisches valign='top'-Attribut ab
$EnableAutoSkinList
Diese Variable ermöglicht den Wechsel des Skins der URL zu jedem anderen in der Wiki-Installation erreichbaren Skin. Siehe auch $PageSkinList und Skins:SkinChange.
$PageSkinList
Dies ist ein Array erlaubter Skins, die vom Besucher mit ?skin= oder ?setskin= in dem URL-Aufruf ausgewählt werden können. Siehe auch $EnableAutoSkinList und Skins:SkinChange.
$TrailFmt
Dies ist ein Array von HTML-Schnipseln, die das Layout der Ausgabe der WikiTrails enthält. Wenn Sie einen oder mehrere eigene Werte in der config.php-Datei definieren, werden diese genutzt. Hier sind die voreingestellten Werte:
$TrailFmt['<<|'] = "<span class='wikitrail'>&lt;&lt; \$prev | \$trailname | \$next &gt;&gt;</span>";
$TrailFmt['<|']  = "<span class='wikitrail'>\$prev\$trailname\$next</span>";
$TrailFmt['^|']  = "<span class='wikitrail'>\$crumbs</span>";
$TrailPathSep
Der Trenner der Seitenabfolge ( ^|[[TrailIndexPage]]|^ ). Z. B. $TrailPathSep = ' > '; gibt "TrailIndexPage > TrailPage2 > TrailPage4" aus.
$InputLabelFmt
Dies ist ein HTML-Schnipsel, der das Layout des "Labels" nach einem Formulareingabefeld enthält. Wenn Sie einen eigenen Wert in der config.php-Datei definieren, wird dieser genutzt. Der voreingestellte Wert enthält am Anfang und am Ende je ein Leerzeichen:
$InputLabelFmt = ' <label for="$LabelFor" $LabelTitle>$LabelText</label> ';
$FmtV['$TableCellCount']
interne Variable von PmWiki - die horizontale Spaltennummer der aktuellen Zelle. Zum Gebrauch in $TableCellAttrFmt und $TableRowAttrFmt.
Beispiel: $TableCellAttrFmt = 'class=col\$TableCellCount';
$FmtV['$TableRowCount']
interne Variable von PmWiki - Administratoren können sie in $TableCellAttrFmt und/oder $TableRowAttrFmt einsetzen.
Beispiel: $TableRowAttrFmt = "class='row\$TableRowCount'";
$FmtV['$TableRowIndex']
interne Variable von PmWiki - die Zeilenindexnummer der aktuellen Zelle, abgeleitet von $TableRowIndexMax (1,2,3,1,2,3,1,2,...). Administratoren können sie in $TableCellAttrFmt und/oder $TableRowAttrFmt einsetzen.
Beispiel: $TableRowAttrFmt = "class='ind\$TableRowIndex'";

siehe auch Die Bearbeiten-Variablen

für die Liste aller Seiten


Übersetzung von PmWiki.LayoutVariables,   Originalseite auf PmWikiDe.LayoutVariables   —   Rückverweise

Zuletzt geändert:   PmWikiDe.LayoutVariablesam 04.11.2024
 PmWiki.LayoutVariablesam 04.11.2024