Hinweise für Entwickler
=======================

Im Idealfall sollte sich an dem Code von Modulen und Templates nichts ändern,
nachdem realURL2 aktiviert wurde. Allerdings gibt es einige deutliche
Unterschiede, die insbesondere für Entwickler wichtig sind.

Erzeugte URLs
-------------

realURL2 erzeugt grundsätzlich immer **relative** URLs und bettet die Basis-URL
als ``<base>``-Tag im Frontend ein. Von dieser Regel wird nur abgewichen, wenn
die URL auf eine andere Domain als die aktuelle zeigt.

Virtuelle Kategorien
--------------------

Da ein Besucher die Adresse

::

  http://www.example.com/unternehmen/jobs.html

aufruft, werden relative URLs nicht ohne Weiteres weiter funktionieren, da sie
nun relativ zu ``/unternehmen/`` wären. Um diesem Problem zu begegnen, fügt
realURL2 automatisch in den ``<head>`` der Seite ein ``<base>``-Tag ein, das
immer auf die oberste Ebene der Website zeigt:

.. sourcecode:: html

  <head>
    <base href="http://www.example.com/" />
    <!-- ... -->
  </head>

Damit werden relative Links zu Assets (CSS, JS, Bilder) weiterhin funktionieren.
Entwickler müssen dafür nichts an ihren Templates anpassen, die Ersetzung wird
automatisch im ``OUTPUT_FILTER``-Event durchgeführt.
