Was ist der Zweck der index.php-Datei?

From Joomla! Documentation

This page is a translated version of the page What is the purpose of the index.php file? and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎Nederlands • ‎español • ‎français

Die index.php-Datei ist das Gerüst der Website. Jede von Joomla! gelieferte Seite ist eine "index.php" mit ausgewähltem Inhalt der Datenbank.

Die index.php-Datei für ein Template enthält eine Mixtur aus Code, der unverändert ausgeliefert wird und PHP-Code, der vor dem Ausliefern modofiziert wird. Der Code ist jedem bekannt, der eine einfache HTML-Webpage erstellt hat: Es gibt 2 Hauptteile - <head> und <body>. Der Unterschied zur index.php ist die Verwendung von PHP-Code, um Informationen aus der Datenbank einzufügen.

Beispiel:

Ein üblicher HTML-Head-Teil:

<head>
<title>My Example Webpage</title>
<meta name="title" content="example" />
<link rel="stylesheet" href="www.example.com/css/css.css" type="text/css" />
</head>

Dasselbe, wie es Joomla! macht:

<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>templates/mytemplate/css/css.css" type="text/css" />
</head>

Anstelle Header-Teile in der index.php zu definieren, wird durch den PHP-Code in der Datenbank nachgeschaut. Der schlaue Teil ist, das beide denselben Code an Benutzer ausliefern. Das <?php blah /> wird im Code der Joomla!-Website durch regulären HTML-Code ersetzt.

Gutes Templatedesign

index.php sollte so reduziert als möglich sein, da sie beim Laden jeder Seite wieder gesendet wird. Gestaltungselemente in css-Dateien liefern, die im Benutzercache gespeichert werden. Die Tutorials arbeiten die technischen Aspekte der index.php-Erstellung ab.

Warum index.php?

Historisch gesehen ist die index.htm der Name der Homepage einer Website. Lädt ein Benutzer "www.example.com", liefert der Webserver "www.example.com/index.htm". Da Joomla! in PHP geschrieben ist, wird index.php automatisch ausgeliefert. Tatsächlich wird auf die index.php des Standard-Templates umgeleitet.