für die Liste aller Seiten
Autoren, Administratoren
PmWiki hat die Fähigkeit, Entwurfsversionen einer Seite zu stapeln, bevor sie offiziell werden. Alle Entwurfs-Seiten enden standardmäßig auf "-Draft". Das kann verändert werden durch Setzen der Variablen $DraftSuffix
. Mehrfache Zwischenentwürfe einer Seite können zwischengespeichert werden in einer Entwurfs-Kopie der Seite, bis der Entwurf fertig ist zum Veröffentlichen.
Konfiguration und Gebrauch
Wenn der Site-Administrator $EnableDrafts
in einer lokalen Anpassungsdatei setzt, wird der "Speichern"-Button in zwei einzelne Buttons aufgeteilt: "Veröffentlichen" und "Als Entwurf speichern".
Der "Als Entwurf speichern"-Button veranlasst, dass alle Bearbeitungen in einer Entwurfs-Kopie der Seite gespeichert werden. Dabei bleibt die Originalseite intakt. Nachfolgende Aufrufe zum Bearbeiten der Seite (Original oder Entwurf) lädt immer die Entwurfsseite zum Bearbeiten.
Der "Veröffentlichen"-Button fügt die Änderungen in die Originalseite ein und löscht alle Entwurfs-Kopien, die angelegt worden sein könnten.
Im Standard sind "Als Entwurf speichern" und "Veröffentlichen" für jeden mit 'Bearbeiten'-Rechten erlaubt (siehe Passwörter). Allerdings kann der Administrator auch die Konfigurationsvariable $EnablePublishAttr
setzen, die ein separates "Veröffentlichen"-Recht anbietet, das erforderlich ist, um in eine Originalseite zu speichern.
Wenn eine Seite veröffentlicht wird, hängt die Art, wie die Seitenversionen gespeichert werden, davon ab, ob der Administrator die Variable $EnableDraftAtomicDiff
gesetzt hat.
- Wenn sie auf 1 gesetzt ist, wird das Veröffentlichen der Seite alle Entwurfsversionen löschen und nur die Differenz zwischen der neu veröffentlichen und der vorher veröffentlichen Version speichern. Beachten Sie, dass das die Autorennamen, die Zeiten, die Beiträge und die Zusammenfassungen der Zwischenversionen löscht. Deshalb sollte die Zusammenfassung, die Sie am Schluss zur Veröffentlichung eintragen, eine Summierung aller Änderungen umfassen.
- Andernfalls werden alle Versionen der Zwischenentwürfe einzeln gespeichert und bleiben erhalten – das ist die Voreinstellung. Der letzte Eintrag für die Änderungen umfasst nur die Änderungen seit des letzten Zwischenentwurfs.
Entwürfe und (Alle) Aktuelle(n) Änderungen
Standardmäßig wird die Änderung bei "Als Entwurf speichern" und "Als Entwurf speichern und bearbeiten" in beide Listen, sowohl bei Alle aktuellen Änderungen als auch bei Aktuelle Änderungen in der Gruppe, eingetragen. Auch nach dem "Veröffentlichen" bleiben die Verweise auf die (verweisten) Versionen der Entwürfe.
Um das auf beiden Seiten, Alle aktuellen Änderungen und Aktuelle Änderungen (in der Gruppe), zu deaktivieren:
$DraftRecentChangesFmt = array();
oder alternativ:
if ( @$EnableDrafts && @$_POST['postedit']>'' || @$_POST['postdraft']>'' )
unset($RecentChangesFmt);
Um nur eines von beidem zu deaktivieren, setzen Sie es individuell zurück:
if ( @$EnableDrafts && @$_POST['postedit']>'' || @$_POST['postdraft']>'' ) {
unset($RecentChangesFmt['$Group.RecentChanges']); # -und/oder-
unset($RecentChangesFmt['$SiteGroup.AllRecentChanges']);
}
Wenn ein $DraftRecentChangesFmt
-Array definiert ist, wird es anstelle von $RecentChangesFmt
benutzt, wenn eine Entwurfsversion gespeichert wird. Um zum Beispiel alle Entwurfsversionen nur auf der Seite Site.DraftRecentChanges erscheinen zu lassen, können sie dies zur config.php''-Datei hinzufügen:
$DraftRecentChangesFmt['Site.DraftRecentChanges']
= '* [[{$Group}.{$Name}]] . . . $CurrentTime $[by] $AuthorLink: [=$ChangeSummary=]';
Siehe auch $RecentChangesFmt
und $DraftRecentChangesFmt
.
Entwürfe und Seitenlisten (und RSS)
Das Draft-Modul setzt zudem die Seitenlisten so (und dadurch auch RSS-Feeds), dass sie Entwurfs-Seiten per Voreinstellung ignorieren. Man muss schon 'list=all' oder Ähnliches einetzen, damit die Entwurfsseiten in den Seitenlisten und RSS-Feeds erscheinen.
FAQ
Wie moderiere ich alle Postings?
Starten Sie mit Entwürfe erlauben, um den "Speichern"-Button in separate "Als Entwurf speichern"- und "Veröffentlichen"-Buttons zu verwandeln. Setzen Sie dann $EnablePublishAttr
. Das fügt eine "Veröffentlichen"-Autorisierungsebene ein, um das Bearbeiten der Entwürfe vom Veröffentlichen unterscheiden zu können.
für die Liste aller Seiten