Manual:Using custom namespaces/de


 * Dieser Artikel betrifft die Wikimedia-Software.

Namensräume sind softwaremässig abgegrenzte Bereiche zur Speicherung von Daten. Genauer sind es Tabellen einer Datenbank. Die Datensätze sind die Artikel, Schlüsselfeld ist der Titel eines Artikels, Standard-Feld ist der Artikelinhalt, zusätzlich können weitere Felder definiert werden (Kapitel, Referenzen, etc).

Standard-Namensräume
In der Wikimedia-Software gibt es folgende Standard-Namensräume:

Die Namensräume 4 und 5 heissen immer so, wie das jeweilige Wiki-Projekt. Bei Wikipedia also Wikipedia und Diskussion_Wikipedia.

Die Namensräume sind über die Nummer definiert. Die Bezeichnung des Namensraumes kann in ... frei gewählt werden.

Zusätzliche Namensräume in Wikipedia
In Wikipedia gibt es folgende zusätzliche Namensräume:

Definition von Namensräumen
Die Namensräume sind in ... definiert:

Zusätzliche Namensräume einrichten
Zusätzliche Namensräume werden in der Datei Local settings.php eingerichtet. Dazu ist ein ftp-Zugang zum Server und eine entsprechende Berechtigung notwendig. In Wikipedia sind beispielsweise "Portal" "Diskussion_Portal definiert. Zugang zur Local settings.php von Wikipedia haben folgende Personen: ....

Für die Definition zusätzlicher Namensräume gibt es zwei Verfahren:

zeilenweise
Vorteil: ...

Beispiel:

Achtung: Strichpunkt nach jeder Zeile.

als Array
Vorteil: ...

Beispiel:

Achtung: Komma nach jeder Zeile, Strichpunkt am Ende der letzten Zeile, und schliessende runde Klammer nicht vergessen.

Verwendung
Jeder Namensraum kann einer eigenen Gruppe von Regeln unterliegen.

Inhalte
Welche Inhalte in welche Namensräume gehören und wie diese auszusehen haben, kann in freier Vereinbarung festgelegt werden. Beispielsweise stehen im Namensraum "Hilfe" sinnvollerweise Artikel die bei der Arbeit im Wiki helfen, und Artikel über die Wikimedia-Software (wie dieser) stehen sinnvollerweise im Namensraum "Wikimedia". In Wikipedia ist beispielsweise auch festgelegt, wann ein Artikel im Artikel-Namensraum ein "guter Artikel" ist.

Aber auch der Artikel-Namensraum kann beliebig unterteilt oder erweitert werden. Damit könnten Inhalte gegliedert werden, beispielsweise könnten getrennte Namensräume angelegt werden für Schüler, Lehrer, Eltern, Schulorganisation, Unterrichtsmaterial.

Berechtigungen
Die Berechtigungen, also wer was in welchem Namensraum darf, werden in der Datei "MediaWiki:Commons.js" definiert.

Standardmässig darf jeder Benutzer in jedem Namensraum:

Die Berechtigungen können unterschiedlich zugeteilt werden, sowohl zu einzelnen Namensräumen, als auch zu einzelnen Benutzergruppen. Beispielsweise können standardmässig alle Benutzer (auch unangemeldete) Artikel lesen, bearbeiten oder neue Artikel anlegen, aber nur angemeldete Benutzer dürfen Artikel verschieben, und nur Administratoren dürfen Artikel löschen.

Benutzergruppen
Standardmässig gibt es folgende Benutzergruppen:

Zusätzliche Benutzergruppen einrichten

 * Siehe das Beispiel und noch komplexer .

Jede zusätzliche Benutzergruppe wird in der Datei "localsettings.php" so definiert:

Namensraumspezifische Rechte an Benutzergruppen vergeben
Beispielsweise könnte man in einer Schule mit den Benutzergruppen "Schüler" und "Lehrer" und den Namensräumen "Lehrerzimmer" und Unterricht" folgende Rechte vergeben:

Damit das funktioniert, muss eine Software-Erweiterung installiert werden [...]. Diese muss in der Datei "MediaWiki:Commons.js" freigeschaltet werden:

Diese Code Zeile muss nach ... und vor ... eingefügt werden.

Beispiel "Vereinswiki"
Ein Verein möchte eine interaktive Website mit der Wikimedia-Software gestalten. Die Vereinsseite soll öffentlich und für alle lesbar sein. Die Inhalte sollen aber nur von Vereinsmitgliedern erstellt werden dürfen. Auf den Diskussionsseiten sollen aber auch Nicht-Vereinsmitglieder einen Kommentar schreiben dürfen, sollen sich aber dafür anmelden. Vorlagen sollen nur von Administratoren bearbeitet werden. Das gilt auch für die Vereinssatzung und die Gebührenordnung.

Dazu ist die Datei "Mediawiki:Commons.js" folgendermassen zu ergänzen:

Beispiel "Schulwiki"
Eine Schule will eine interaktive Website mit der Wikimedia-Software gestalten. Die Schulseite soll öffentlich und für alle lesbar sein. Die Inhalte sollen aber nur von angemeldeten Benutzern erstellt und editiert werden dürfen. Auf den Diskussionsseiten sollen aber auch Nicht-Angemeldete einen Kommentar schreiben dürfen. Schülern, Lehrern, und Eltern sollen einen eigenen Bereich erhalten, in dem zar alle lesen, aber nur jeweils die Schüler, Lehrer, oder Eltern neue Artikel erstellen und editieren dürfen. Vorlagen sollen nur von Administratoren bearbeitet werden. Die Schulordnung soll nur vom Rektor verändert werden dürfen.

Alle Artikel über den Schulstoff kommen in den "Namensraum 0" und werden diskutiert im "Namensraum 1". Für die Lehrer, für die Schüler und für die Eltern werden zusätzliche Namensräume eingerichtet. Dazu muss der Systemadministrator über seinen ftp-Zugang die Datei "Local settings.php" folgendermassen ergänzen:

Dann muss die Softwareerweiterung "NamespacePermissions" installiert werden [...].

Dann müssen zusätzliche Benutzergruppen definiert und Rechte vergeben werden. Dies geschieht in der Datei "MediaWiki:Commons.js":

Dazu ist die Datei "Mediawiki:Commons.js" folgendermassen zu ergänzen:

Geschützter Namensraum
Die Wikimedia-Software ist nicht geeignet, absolut geschützte Namensräume zu erzeugen.

Dennoch gibt es gute Möglichkeiten, Inhalte vor Unbefugten zu verbergen. Wenn beispielsweise die Lehrer für die Notenkonferenz einen Namensraum "Geheim" möchten, zu dem ausser Lehrern niemand Zugang hat, dann wäre folgendes zu tun:

Über "Suchen" und "Spezial:alle_Seite" können die Artikel im Namensraum aber immer noch gefunden und gelesen werden.

Suche einschränken
So wird die Suche im Namensraum "Geheim" unterbunden:

Spezial:Alle_Seiten einschränken
So wird der Zugriff über "Spezial:Alle_Seiten" auf den Namensraum "Geheim" unterbunden:

...

Sidebar ausblenden
So wird "Spezialseiten" in der Sidebar für nicht angemeldete Benutzer ausgeblendet:

...

Benutzer zu einer Benutzergruppe zuordnen
Damit nur der Rektor und der Bürokrat den Status "Lehrer" vergeben kann ist noch folgender Code notwendig:

Englische Hilfe-Seiten

 * Manual:Using_custom_namespaces
 * Help:User_rights
 * Help:User_rights#Rights_and_groups
 * User_groups_table
 * Manual:$wgAddGroups
 * Manual:$wgRemoveGroups
 * Extension:NamespacePermissions#SpecialSearch.php
 * Extension:Hidden_pages#version_1.5