Como funciona Drupal ?

Todas las peticiones a Drupal son atendidas por index.php ejecutandose los siguientes pasos:

Bootstrap

En esta etapa se carga el drupal mismo para atender cada peticion que se le hace al servidor.

Inicializacion

Se carga la configuracion definida en el archivo settings.php y se establece la base URL del sitio web.

Cache de Pagina Temprano

En situaciones con alto trafico se invoca un sistema de cache antes inclusive de conectarse a la base datos. Este etapa solo funciona si se ha configurado la variable page_cache_fastpath a TRUE. Cuando una peticion entra a esta etapa el sistema le devuelve el contenido al navegador y termina el proceso drupal.

Inicializacion de la Base de datos

Se configura y realiza la primera conexion a la base de datos

IP Based Access Control

En este punto drupal bloquea los accesos en funcion del nombre/IP de la maquina cliente.

Inicializacion de la Session

Drupal carga la informacion de la sesion del usuario directamente de la base de datos.

Cache de Pagina Tardio

En este punto, Drupal determina en funcion de la informacion del usuario ( roles, permisos, etc ) si tiene la informacion solicitada en el cache o debe generarse de nuevo. Si tiene la informacion en la cache la solicitud se detiene en ese punto.

Seleccion de Idioma

Drupal determina aca que idioma debe trabajar, y se busca la informacion en el idioma seleccionado.

Path

En esta etapa, Drupal determina quien debe procesar la peticion en funcion de la URL solicitada.

Completada Carga inicial

Llegados a este punto el proceso de carga de drupal a terminado. De aca Drupal, lanza init_hook para que todos los modulos habilitados para el sitio tengan la oportunidad de cargarse.

Procesando la peticion

Drupal envia la peticion ( URL ) a la funcion hook especifica para su procesamiento

Themes

Luego de haber procesado la informacion solicitada, drupal llama al theme para que se encargar de armar la visualizacion de la misma. Al momento de procesar el theme se procesan en el siguiente orden:

  • html.tpl.php Es el archivo encargado de definir el head y el body. Asi como de cargar los estilos y los javascript declarados en el info. Usualmente no es modificado.
  • page.tpl.php Es el archivo encargado de visualizar las regiones declaradas en el info. Aca usualmente se carga el menu principal. 
  • region.tpl.php Este archivo es el encargado de controlar la  visualizacion de las regiones 
  • block.tpl.php Cada region puede tener diferentes blocks que son definidos en el menu Structure -> Blocks. Este archivo se encarga de controlar la visualizacion de cada bloque.
  • node.tpl.php Existe un bloque especial en drupal llamado content. En el caso que nuestra URL apunte a un nodo el contenido de ese nodo se mostrara usando este archivo.


Contactanos