Englisch: Projects More |
PmWikiDe /
Individuelle Einstellungen pro Gruppe
Administratoren (FTP)
Einer der Zwecke von Wikigruppen ist, einem Administrator des Wikis die Möglichkeit zu geben, die Besonderheiten von PmWiki auf einer per-Gruppen-Basis anzupassen. So kommt die Anpassung pro Gruppe ins Spiel: Gruppenspezifische PHP- und CSS-Dateien
Um eine lokale Anpassung für eine bestimmte Gruppe durchzuführen,
Diese Dateien werden automatisch abgearbeitet, nachdem die lokalen Anpassungen in Um beispielsweise das Bild zu ersetzen, das in der oberen, linken Ecke der " <?php $PageLogoUrl = "/meinebilder/schach.gif"; Das Beispiel hat den Effekt, dass alle Seite in der GruppenName-Wikigruppe das Bild "/meinebilder/schach.gif" als Logo anstelle des Standardlogos einsetzen. Für das Hinzufügen von Auszeichnungen oberhalb oder unterhalb des Textes siehe Kopfbereich (und Fußbereich) der Gruppe. Individuelle Anpassungen pro SeitePmWiki erlaubt auch die Anpassungen für einzelne Seiten. Benutzen Sie einfach den kompletten Seitennamen der anzupassenden Seite anstelle des Gruppennamen. Beispielsweise kann man eine Datei Nahezu jede Anpassung, die man in die Eine wichtige Ausnahme dazu ist, gruppen- oder seitenweise Anpassungen für Rezept-Skripten zu setzen, die in der config.php eingefügt wurden. Die meisten Rezepte müssen ihre Anpassungs-Variablen gesetzt bekommen, bevor das Skript eingefügt wird. Statt eine gruppen- oder seitenweise Anpassungs-PHP-Datei zu benutzen, setzt man eine bedingte Anweisung in die config.php, bevor man das Rezeptskript einfügt. Beispiel: ## Einschließen der seiten- oder gruppenweisen lokalen PHP-Skripten $pagename = ResolvePageName($pagename); include_once("$FarmD/scripts/pgcust.php"); $page = PageVar($pagename, '$FullName'); $group = PageVar($pagename, '$Group'); //gruppenweise Anpassungen: if($group=='GroupName') { $RecipeVariable = 'valueA'; etc. ... } //seitenweise Anpassungen: if($page=='GroupName.PageName') { $RecipeVariable = 'valueB'; etc. ... } //include recipe after variables are set: include_once('cookbook/recipescript.php'); Lesen Sie dazu bitte auch Reihenfolge der Befehle in config.php. Beachten Sie, dass diese Methode nicht dafür benutzt werden kann, die Variable BearbeitungsreihenfolgeFür alle Anpassungen bearbeitet PmWiki zuerst die Individuelle CSS-Stile für Gruppen oder SeitenUm CSS-Stile auf Seiten einer bestimmten Gruppe namens body { background: #F4C4B4; } Verhindern von Konfigurationen auf GruppenebeneJede Anpassungsdatei kann AuthentifikationAlle Passwörter für eine Gruppe sollten in den Gruppenattributen der Gruppeseite gesetzt werden (siehe Passwortadministration), nicht in einer Gruppen-Anpassungsdatei. Wikifarmen berücksichtigenWikigruppen sind ein leichter Weg, mehrere Sites in einer einzigen Wikiinstallation zu beherbergen, indem man jeder Site eine eigenen Gruppe gibt. Ein anderer Weg ist, Wikifarmen zu nutzen. Das erlaubt jeder Site, einen eigenen Satz von Wikigruppen und lokalen Anpassungsdateien zu haben. Mehr dazu in Wikifarmen →Begriffserklärung und Installation von Wiki-Farmen Wenn sie nach verschachtelten Gruppenebenen suchen, sollten Sie dies bedenken: Pm's design considerations on hierarchical groups. FAQWie kann ich CSS-Stile auf bestimmte Gruppen oder Seiten anwenden? Erzeugen Sie einfach eine Warum sollten Passwörter nicht in Gruppen- oder Seitenanpassungsdateien gesetzt werden? Der Grund für diesen Ratschlag ist, dass Gruppenanpassungsdateien nur für die angezeigte Seite geladen wird. Wenn also
einfügen. Weil nun die GruppeA.php-Datei nicht geladen wird (er hat ja die Seite Main.WikiSandbox → local/Main.php aufgerufen), wird kein Lesepasswort gesetzt. Das gleiche gilt natürlich entsprechend für Seitenapassungsdateien. Ist diese Abarbeitungsreihenfolge nicht befremdlich? Warum wird die Seitenkonfiguration nicht am Schluss geladen (also nach der globalen und der Gruppenkonfiguration)? Was wir oft wollen, ist einer Gruppe von Seiten bestimmte Fähigkeiten zu geben, aber diese Fähigkeiten für eine bestimmte Seite zu unterbinden, als seien die nie eingerichtet worden. Wenn die Gruppenkonfigurationsdatei zuerst bearbeitet wird, wird es sehr mühsam/weitschweifig für die Seitenkonfigurationsdatei, die Effekte der vorigen Datei ungeschehen zu machen. Deshalb laden wir die Seiten- vor der Gruppendatei. Wenn eine Seitenkonfiguration darauf angewiesen ist, dass die Gruppenkonfiguration zuerst geladen wird, kann sie dem Rezept oben folgen (indem sie PHPs
Übersetzung von PmWiki.GroupCustomizations, Originalseite auf PmWikiDe.GroupCustomizations — Backlinks
|