RSS-Feed

Interne News

BBCode-Replace-Code-Optimierung

| geschrieben von Dr. Sooom
Wie bereits aus diversen anderen internen News bekannt sein dürfte, werden die BBCodes aus dem Forum hier anders dargestellt. Für diese Darstellung muss ein sogenannter Replace-Code (str_replace) in PHP geschrieben werden. Und genau dieser Replace-Code wurde nun optimiert.

Ab heute ist es nun möglich sowohl geordnete, als auch ungeordnete Aufzählungen außerhalb des Forums darstellen zu können. Auch Verschachtelungen sind bis zu einem gewissen Grad möglich. Natürlich kann jeder Aufzählungspunkt in einer eigenen Zeile stehen, sodass der Überblick bei der Erstellung nicht verloren gehen kann. Hier mal ein paar Beispiele mit den passenden BBCodes:

Ungeordnete Auflistung:
  • Erster Eintrag
  • Zweiter Eintrag


Geordnete Auflistung:
  1. Erster Eintrag
  2. Zweiter Eintrag


Verschachtelte Auflistung (ungeordnet und geordnet gemischt):
  • Erster Eintrag
  • Zweiter Eintrag
    1. Erster Untereintrag
    2. Zweiter Untereintrag
  • Dritter Eintrag
    • Erster Untereintrag


Ach, bevor ich’s vergesse: Außerhalb des Forums macht es keinen Unterschied, ob nun die geordnete Auflistung numerisch oder alphabethisch erfolgt, da dort sowieso nur eine numerische Auflistung dargestellt wird.

Damit nun alles korrekt dargestellt wird, musste die CSS-Datei leicht überarbeitet werden, was dazu führte, dass auch die folgenden Seiten angepasst werden mussten: Boardregeln, Datenschutz und Sitemap. Bei den Boardregeln (Version: 1.0.2) und beim Datenschutz (Version: 1.0.3) hat sich nur der HTML-Code geändert, wodurch die dritte Stelle der Versionsnummer erhöht wurde.

Okay, damit aber noch nicht genug. Auch beim Zitieren hat sich etwas getan. Ab heute werden nun auch Zitate außerhalb des Forums angezeigt, bei denen die Quelle bzw. der Autor angegeben wurde. Diese Angaben werden jedoch nicht außerhalb des Forums angezeigt. Auch Verschachtelungen sind hier ebenfalls bis zu einem gewissen Grad möglich. Hier mal ein paar Beispiele mit den passenden BBCodes:

Zitat mit Quellenangabe:
Das habe ich geschrieben.

Verschachtelte Zitate (mit und ohne Quellenangabe):
Das habe ich geschrieben.
Habe ich das auch geschrieben?


So, und warum gehen Verschachtelungen nur bis zu einem gewissen Grad und wo liegt dieser? Tja, bei der Programmierung konnte ich lediglich die folgenden Unkorrektheiten feststellen:

  1. Eine ungeordnete Auflistung in einer geordneten Auflistung wird nicht W3C-Konform aufgelöst.
  2. Eine geordnete Auflistung in einer geordneten Auflistung wird nicht korrekt aufgelöst.
  3. Ein Zitat mit einer Quellenangabe in einem Zitat mit Quellenangabe wird nicht korrekt aufgelöst.
  4. Ein Zitat mit einer Quellenangabe in einem Zitat ohne Quellenangabe wird ebenfalls nicht korrekt aufgelöst.
  5. Der FLASH-BBCode wird grundsätzlich nicht unterstützt, obwohl es theoretisch ginge.
  6. Der Inhalt des Code-BBCodes darf nur einzeilig angegeben werden, damit er auch außerhalb des Forums korrekt dargestellt werden kann, ansonsten würde ein Zeilenumbruch durch ein <br /> dargestellt werden.

Ob und wann diese Unkorrektheiten aus der Welt geräumt werden, ist noch ungewiss. Zumindest funktionieren die meisten BBCodes nun auch außerhalb des Forums so, wie ich es möchte, sodass zukünftige Changelogs in einer vernünftigen Auflistung auch dargestellt werden können. Weiters sei noch erwähnt, dass diese Optimierung keinen Einfluss auf das phpBB-Forum und den RSS-Feeds hat.