Formulare

SPIP läßt sehr viel Interaktion der Site mit den Besuchern zu; dafür werden zahlreiche Formulare auf der öffentlichen Site angeboten, welche teils die Verwaltung des Zugangs zum privaten Bereich, teils die Bewilligung zum Einbringen von Nachrichten und Unterschriften ermöglichen.

Die Formulare integrieren sich mittels eines einfachen Tags in die Templates; SPIP kümmert sich dann um das (häufig komplexe) Verhalten dieser Formulare in Abhängigkeit von der Umgebung und von den Konfigurationseinstellungen im privaten Bereich.

Interaktive Funktionen

-  #FORMULAIRE_RECHERCHE

Es handelt sich um das Formular für die in SPIP integrierte Suchmaschine. Es wird im Artikel über die Suchschleifen vorgestellt.

-  #FORMULAIRE_FORUM

Das Tag #FORMULAIRE_FORUM verwaltet die Schnittstelle, die das Posten von Nachrichten in den öffentlichen Foren erlaubt. Es betrifft daher in erster Linie die FORUMS-Schleife.

Das Formular hängt offensichtlich davon ab, welche Wahl bei der Moderation der Foren getroffen wurde: a posteriori, a priori oder per Abonnement.

In dem (sehr speziellen) Falle, daß man das Vorhandensein von Schlagwörtern in den öffentlichen Foren gestattet, kann man das Verhalten dieses Formulars mit Personalisierungs-Variablen (siehe hierzu den Artikel Variables for customising SPIP; noch nicht in deutscher Übersetzung verfügbar) verfeinern.

-  #FORMULAIRE_SIGNATURE

Das Tag #FORMULAIRE_SIGNATURE gestattet das Unterschreiben von mit Artikeln verbundenen Petitionen (dieses Formular wird deshalb in einer ARTICLES-Schleife angebracht).

N.B. Das Unterschreiben von Petitionen verlangt obligatorisch eine Validierung des Unterzeichners per E-Mail. Dieses Formular ist daher nur dann von Interesse, wenn Ihr Provider den Versand von E-Mails per PHP erlaubt.

-  #FORMULAIRE_SITE

[SPIP 1.4] Das Tag #FORMULAIRE_SITE zeigt eine Schnittstelle an, die den Besuchern der Site erlaubt, die Verlinkung von Sites vorzuschlagen. Diese Sites erscheinen dann als «vorgeschlagen» im privaten Bereich, wo sie auf eine Validierung durch einen Administrator warten.

Dieses Formular wird nur dann angezeigt, wenn Sie die Option «Website-Verzeichnis verwalten» in der Konfiguration der Site im privaten Bereich aktiviert haben und wenn Sie unter «Wer darf Websites zur Verlinkung vorschlagen?» die Regelung «Besucher im öffentlichen Bereich» aufgestellt haben.

Die verlinkten Sites sind unter SPIP an den Rubriken befestigt; man kann das Tag #FORMULAIRE_SITE daher nur im Inneren einer RUBRIQUES-Schleife anbringen.

-  #FORMULAIRE_ECRIRE_AUTEUR

[SPIP 1.4] Wenn es im Inneren einer AUTEURS-Schleife angebracht wird, erlaubt dieses Formular, eine E-Mail an den Autor (des Artikels) zu schicken. Dies eröffnet die Möglichkeit, mittels einer Modifizierung der Templates (die per Voreinstellung die Links anzeigen, die die E-Mail-Adressen der Autoren von Artikeln enthalten) an Autoren schreiben zu können, ohne daß deren E-Mail-Adresse auf der öffentlichen Site angezeigt wird.

Einloggen und Authentifizierung

-  #FORMULAIRE_INSCRIPTION

In diesem Zusammenhang ist das wichtigste Tag #FORMULAIRE_INSCRIPTION; es verwaltet das Einloggen neuer Redakteure. Es zeigt nur dann eine Login-Schnittstelle an, wenn Sie das automatische Einloggen über die öffentliche Site gestattet haben (anderenfalls zeigt dieses Tag absolut gar nichts an).

Das Einloggen erfordert die Versendung von Verbindungs-Informationen (Login-Name und Paßwort) per E-Mail; daher funktioniert dieses Formular nur, wenn Ihr Provider den Versand von E-Mails per PHP erlaubt.

-  #LOGIN_PRIVE

[SPIP 1.4] Genauso wichtig (wenn nicht wichtiger) ist das Tag #LOGIN_PRIVE; es zeigt das Formular an, das den Zugang zum privaten Bereich erlaubt (zum Verzeichnis «/ecrire» der Site).

Wichtig: dieses Tag muß unbedingt in dem Template vorhanden sein, das von der Seite spip_login.php3 aufgerufen wird, das heißt standardmäßig in dem Template namens login-dist.html. Tatsächlich leitet SPIP Sie während des direkten Zugriffs auf die Adresse «/ecrire» Ihrer Site über spip_login.php3 um.

-  #LOGIN_PUBLIC

[SPIP 1.4] Für eine viel speziellere Verwendung zeigt #LOGIN_PUBLIC ein Formular an, das es Ihren Benutzern erlaubt, sich gänzlich über die öffentliche Site zu identifizieren (ohne den privaten Bereich zu betreten). Dieses Tag wird insbesondere auf Sites mit Foren, die per Abonnement moderiert werden, zur Authentifizierung der Besucher eingesetzt. Es kann außerdem als Basisbaustein für die Einschränkung des Zugangs zu bestimmten Inhalten der öffentlichen Site verwendet werden: das bleibt aber eine komplexe Verwaltungsangelegenheit und wird noch weitere Entwicklungsarbeit und die Abfassung kompletter Tutorials verlangen, bevor dieses Feature leicht von jedermann benutzt werden kann; nichtsdestoweniger wird weiter unten ein Beispiel für die fortgeschrittene Anwendung gegeben.

Das Tag #LOGIN_PUBLIC bildet per Voreinstellung «eine Schleife zu sich selbst»; das heißt, daß das Formular auf die Seite zurückkehrt, wo es sich befindet. Man kann aber in folgender Form eine Seite angeben, zu der das Formular weiterleitet:

[(#LOGIN_PUBLIC|meineseite.php3)]

Wenn Ihre Site ein automatisches Einloggen zum privaten Bereich bietet, sind die Daten der Verbindung zum öffentlichen Bereich identisch mit denen der Verbindung zum privaten Bereich; das heißt, die Daten, die dem Benutzer geschickt werden, damit er sich für den öffentlichen Bereich identifizieren kann, erlauben ihm auch den Zutritt zum privaten Bereich. Wenn Sie im Gegensatz hierzu das automatische Einloggen zum privaten Bereich untersagt haben, muß es unbedingt mindestens einen Artikel geben, dessen Foren «per Abonnement» moderiert werden, um dieses Tag zu aktivieren; von da an kann SPIP die Verbindungs-Informationen für die öffentliche Site ohne Zugang zum privaten Bereich liefern.

-  #URL_LOGOUT [SPIP 1.5] ist das Gegenstück zu #LOGIN_PUBLIC; es gibt eine URL an, die einem authentifizierten Besucher das Ausloggen ermöglicht.

Hier ein einfaches, aber vollständiges Beispiel für die Anwendung dieser beiden Tags. Man muß ein wenig PHP betreiben, um die Variable $auteur_session zu prüfen, die anzeigt, ob ein Autor sich identifiziert hat oder nicht. Wenn dies der Fall ist, kann man sich seinen Status, sein Login und so weiter per $auteur_session['statut'] beschaffen (und sogar prüfen).

Machen Sie sich unbedingt klar, daß der Inhalt ausschließlich über die betreffenden Templates «gesichert» ist. Wenn beispielsweise Ihr Template für «Diesen Artikel drucken» nicht per $auteur_session eine Prüfung durchführt, kann die ganze Welt (einschließlich der Suchmaschinen!) auf die berühmten Inhalte zugreifen, die Sie schützen möchten.

<?php if ($auteur_session) { ?>

Sie sind eingeloggt, <a href='#URL_LOGOUT'>klicken Sie hier, um sich auszuloggen</a>

... hier folgt der Inhalt mit Zugangsbeschränkung....

<?php } else { ?>

<h2>Der Zugang zu diesem Teilbereich ist eingeschränkt</h2>
#LOGIN_PUBLIC

<?php } ?>

Stylesheets

Man kann die graphische Schnittstelle der Formulare mittels Stylesheets beträchtlich modifizieren, insbesondere die Klassen forml , spip_encadrer und spip_bouton .

Autor wshSchlegel Publié le : Mis à jour : 21/03/23

Traductions : عربي, català, Deutsch, English, Español, français, italiano, Nederlands