1====== Newpagefill Plugin ====== 2 3---- plugin ---- 4description: Seitenerstellungs-Assistent mit Vorfüllung und @TITLE@-Unterstützung 5author : Valentin LORTET 6email : contact@valentinlortet.fr 7type : Action 8lastupdate : 2026-03-13 9compatible : Librarian 10depends : 11conflicts : 12similar : 13tags : Page, Creation, Template, Namespace, JavaScript 14 15downloadurl: https://github.com/Lortet/dokuwiki-plugin-newpagefill/zipball/master 16bugtracker : https://github.com/Lortet/dokuwiki-plugin-newpagefill/issues 17sourcerepo : https://github.com/Lortet/dokuwiki-plugin-newpagefill/ 18donationurl: 19screenshot_img : 20---- 21 22===== Installation ===== 23 24Das Plugin über den [[plugin:extension|Erweiterungs-Manager]] installieren. 25 26===== Beschreibung ===== 27 28Das Plugin **newpagefill** fügt einen leichtgewichtigen Assistenten zur Seitenerstellung hinzu: 29 * Titel eingeben; 30 * Bezeichner automatisch vorschlagen; 31 * optional den Namensraum eingeben; 32 * Erstellungsmodus gemäß Konfiguration wählen; 33 * Editor direkt auf der Zielseite öffnen. 34 35Es ergänzt auch das native DokuWiki-Vorlagensystem: 36 * ''_template.txt'' oder ''__template.txt'' verwenden, wenn vorhanden; 37 * Unterstützung für den Platzhalter ''@TITLE@'' im injizierten Inhalt hinzufügen; 38 * auf eine plugin-eigene Vorlage zurückfallen, wenn keine native Vorlage vorhanden ist. 39 40===== Konfiguration ===== 41 42^ Name ^ Beschreibung ^ Standardwert ^ 43| template | Ersatzvorlage, die verwendet wird, wenn keine native DokuWiki-Seitenvorlage gefunden wird. | ''===== @TITLE@ ====='' | 44| default_start_mode | Standard-Erstellungsmodus. | ''start'' | 45 46Mögliche Werte für ''default_start_mode'': 47 * ''ask'': Auswahl im Dialog anzeigen; 48 * ''start'': Startseite erstellen; 49 * ''none'': direkte Seite erstellen; 50 * ''same'': Unterseite mit gleichem Namen erstellen. 51 52===== Platzhalter ===== 53 54Die Plugin-Vorlage kann enthalten: 55 * ''@TITLE@'': vom Plugin berechneter Titel (spezifisch für newpagefill); 56 * alle nativen DokuWiki-Platzhalter: ''@ID@'', ''@NS@'', ''@PAGE@'', ''@USER@'', ''@DATE@'' usw. (vom DokuWiki-Core verwaltet, nicht von diesem Plugin). 57 58===== Verhalten von @TITLE@ ===== 59 60Der Wert von ''@TITLE@'' wird wie folgt berechnet: 61 * der ''title''-Wert der Anfrage hat Vorrang; 62 * andernfalls versucht das Plugin, einen Titel aus der Erstellungs-URL zu extrahieren; 63 * wenn die erstellte Seite die Startseite des Namensraums ist, wird der Name des übergeordneten Namensraums verwendet; 64 * ''_''-Zeichen werden durch Leerzeichen ersetzt. 65 66===== Vorlagenkompatibilität ===== 67 68Das Plugin folgt dieser Reihenfolge: 69 * bereits von DokuWiki bereitgestellte Vorlage; 70 * ''_template.txt'' im Zielordner; 71 * ''__template.txt'' im aktuellen oder übergeordneten Namensraum; 72 * im Plugin konfigurierte Ersatzvorlage. 73 74===== JavaScript-Funktion ===== 75 76Das Plugin stellt die globale Funktion bereit: 77 78<code javascript> 79window.NewPageFill.openCreatePageDialog(options) 80</code> 81 82Beispiel: 83 84<code javascript> 85window.NewPageFill.openCreatePageDialog({ 86 namespace: 'wiki:dokumentation', 87 initialTitle: 'Neue Seite' 88}); 89</code> 90 91Nützliche Optionen: 92 * ''namespace'': Ziel-Namensraum in DokuWiki; 93 * ''initialTitle'': vorausgefüllter Titel; 94 * ''start'': 95 * ''undefined'' oder ''null'': Plugin-Konfiguration verwenden; 96 * ''@ask@'': Moduswahl erzwingen; 97 * ''true'': Wiki-Startseite verwenden; 98 * ''false'': Seite direkt erstellen; 99 * ''@same@'': Unterseite mit demselben Namen wie der Bezeichner erstellen; 100 * jede andere Zeichenkette: Unterseite mit diesem Wert erstellen; 101 * ''sepchar'': Trennzeichen zur Erzeugung des Bezeichners. 102 103Wenn ''start'' nicht angegeben ist und ''default_start_mode = ask'', bietet der Dialog: 104 * direkte Seite; 105 * Startseite; 106 * Unterseite mit gleichem Namen. 107