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
$ActionSkin
['print']='foo'
zu setzen, um das 'foo'-Skin zum Drucken einzustellen, was auch immer sonst in der $Skin
-Variable eingestellt ist.
$WikiTitle
$EnablePageTitlePriority
(:title ...:)
-Seiten-Direktiven gehandhabt werden.
$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
$EnableDiffInline
= 0;
# Farben abschalten, reine Textunterschiede anzeigen
$HTMLTagAttr
<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"';
<html xmlns="http://www.w3.org/1999/xhtml" $HTMLTagAttr>
$HTMLStylesFmt
$HTMLHeaderFmt
<!--HTMLHeader-->
-Anweisung enthält. Dieses Array bietet einen einfachen Platz für Skripten, um spezifische HTML-Header-Zeilen einzufügen.
$HTMLHeaderFmt['logo'] = '<link href="http://path/to/logo.png" type="image/png" rel="icon" /> <link href="http://path/to/logo.ico" type="image/x-icon" rel="shortcut icon" />';
$HTMLHeaderFmt['rss'] = '<link rel="alternate" type="application/rss+xml" title="Rss All recent Changes" href="$ScriptUrl/Site/AllRecentChanges?action=rss" />';
$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-->
-Anweisung 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
<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
(:messages:)
-Seitendirektive angezeigt wird. Gewöhnlich wird es benutzt, um Angaben bezüglich der Bearbeitung von Seiten auszugeben.
$RecentChangesFmt
$RecentChangesFmt['$SiteGroup.AllRecentChanges']
'* [[{$Group}.{$Name}]] . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]'
. . .
). 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 mit zwei aufeinanderfolgenden Leerzeichen oben am Anfang auf der Änderungen-Seite.
$RecentChangesFmt['$SiteGroup.AllRecentChanges'] = '* [[{$Group}.{$Name}]] . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]'; $RecentChangesFmt['$Group.RecentChanges'] = '* [[{$Group}/{$Name}]] . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]';
$RecentUploadsFmt
$RecentChangesFmt
. Wenn es aktiviert wird, werden neue hochgeladene Dateien in den 'Aktuellen Änderungen' geloggt. Voreinstellung ist inaktiv. Siehe Cookbook:RecentUploadsLog für weitere Informationen.
$DraftRecentChangesFmt
$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
$RCLinesMax
= 1000; # verwalte höchstens 1000 aktuelle Änderungen
$PageRedirectFmt
(:redirect:)
-Anweisung umgeleitet wurde.
$PageRedirectFmt = '<p><i>redirected from $FullName</i></p>'; $PageRedirectFmt = '';
$WikiStyle
$WikiStyleApply
'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=)'
* %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 |
|
$WikiStyleApply
hinzufügen, um Wikistile auf andere HTML-Elemente auszudehnen, zum Beispiel um Stile auf Tabellenzeilen oder Anker-Tags auszudehnen.
$MaxIncludes
(: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
$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 der erste gefundene Skin aus der Liste benutzt wird.
$SkinDirUrl
$SkinLibDirs
$SkinLibDirs = array( "./pub/skins/\$Skin" => "$PubDirUrl/skins/\$Skin", "$FarmD/pub/skins/\$Skin" => "$FarmPubDirUrl/skins/\$Skin");
$PageLogoUrl
$EnablePathInfo
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
$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
auf 0
, blockiert man diese Umleitung, so dass PmWiki weiterhin mit dem angegebenen Seitennamen arbeitet statt ein Redirect zu veranlassen.
$GroupHeaderFmt
$GroupHeaderFmt = '(:include {$Group}.GroupHeader self=0 basepage={*$FullName}:)(:nl:)';
$GroupPrintHeaderFmt
action=print
aktiv ist. Der Standardwert ist:
SDV($GroupPrintHeaderFmt,'(:include $Group.GroupPrintHeader basepage={*$FullName}:)(:nl:)');
$GroupFooterFmt = '(:nl:)(:include {$Group}.GroupFooter self=0 basepage={*$FullName}:)';
action=print
aktiv ist. Der Standardwert ist:
SDV($GroupPrintFooterFmt,'(:nl:)(:include $Group.GroupPrintFooter basepage={*$FullName}:)');
$PageNotFoundHeaderFmt
# 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
$HTMLVSpace = '';
in einer lokalen Anpassungsdatei (z. B. local/config.php
) zu setzen, verhindert 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üge die $HTMLVSpace = '';
-Anweisung in eine skin.php-Datei ein und stelle noch die global $HTMLVSpace;
-Anweisung voran.
$HTMLPNewline
$HTMLPNewline
= '<br/>';
$SimpleTableDefaultClassName
$SimpleTableDefaultClassName
= "wikisimpletable";
$TableCellAttrFmt
<td>
- oder <th>
-Zelle mitgegeben werden. Kann Referenzen enthalten auf $TableCellCount, was die Spaltennummer der aktuellen Zelle enthält.
$TableCellAlignFmt
<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'";
$TableRowAttrFmt
<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
# Setze Zeilenindices als 1, 2, 3, 1, 2, 3, 1, 2, ...$TableRowIndexMax
= 3; Siehe hierzu auch$TableRowAttrFmt
$EnableTableAutoValignTop
valign='top'
-Attribut ein, wenn in der Quelle kein valign
-Attribut definiert ist. Wenn Sie in der config.php diese Variable auf 0 setzen, verhindern Sie diese automatische Hinzufügung.
$EnableTableAutoValignTop
= 0; # schalte automatisches valign='top'-Attribut ab
$FmtV
['$TableCellCount']$TableCellAttrFmt
und $TableRowAttrFmt
.
Beispiel: $TableCellAttrFmt = 'class=col\$TableCellCount';
$FmtV
['$TableRowCount']$TableCellAttrFmt
und/oder $TableRowAttrFmt
einsetzen.
Beispiel: TableRowAttrFmt = "class='row\$TableRowCount'";
$FmtV
['$TableRowIndex']$TableRowIndexMax
(1,2,3,1,2,3,1,2,...)
Example: $TableRowAttrFmt = "class='ind\$TableRowIndex'";
siehe auch Die Bearbeiten-Variablen
Übersetzung von PmWiki.LayoutVariables, Originalseite auf PmWikiDe.LayoutVariables — Backlinks
Zuletzt geändert: | PmWikiDe.LayoutVariables | am 11.07.2017 |
PmWiki.LayoutVariables | am 27.01.2020 |