¿Para qué sirve el archivo index.php?

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 • ‎español • ‎français • ‎Nederlands

El archivo index.php es el esqueleto del sitio web. Cada página que Joomla! proporciona es "index.php" materializada con una selección de contenidos insertados desde la base de datos.

El archivo index.php de una plantilla contiene una mezcla de código, que será entregada como tal, y el código php, será modificado antes de la entrega. El código será familiar para cualquiera que haya diseñado una simple página html: hay 2 secciones principales: <head> y <body>. Donde index.php se diferencia es en el uso de código php para insertar la información seleccionada desde una base de datos.

He aquí un ejemplo:

Una tradicional sección <head> en HTML:

<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>

Y lo mismo hace Joomla! desde:

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

Así, en lugar de definir estas partes del encabezado en el archivo index.php, las partes del encabezado se levantan mirando la base de datos, con trozos de código php. La parte más inteligente es que ambos de estos scripts entregará el mismo código a un usuario. Si miramos el código de un sitio web Joomla!, todos los <?php ...bla... /> han sido sustituidos por código html regular.

Buen diseño de la plantilla

index.php debe ser un esqueleto tan desnudo como se pueda hacer, porque será reenviado cada vez que se cargue una página nueva. Elementos como el estilo deben ser entregado en los archivos css que se guardan en la caché de los usuarios. Los tutoriales de aquí va a ir a través de los aspectos técnicos de la creación de tu index.php.

Por qué index.php ?

Index.htm históricamente ha sido el nombre dado a la página principal de un sitio web. Así, cuando un usuario ingresa a www.ejemplo.org el servidor web entrega www.ejemplo.org/index.htm. Como Joomla! está escrito en PHP, index.php es el archivo servido automáticamente. Para complicar más las cosas, cuando un usuario navega por el sitio web Joomla!, el index.php del directorio raíz se redirige al index.php de la plantilla predeterminada actual.