Como ya se ha adelantado, Drupal está desarrollado en PHP, un lenguaje de programación interpretado, diseñado para el desarrollo de páginas Web, y la ampliación de Drupal mediante módulos también se realiza en PHP. A partir de esta unidad comenzamos a estudiar cómo desarrollar nuevos módulos.
La comunicación entre los módulos y el núcleo de Drupal se realiza a través de funciones PHP denominas hooks o ganchos. Además, podremos hacer uso de funciones predefinidas que componen la API de Drupal. Una API (Interfaz de programación de aplicaciones) es una librería de funciones que permite acceder a determinados datos y funcionalidades del sistema sin necesidad de conocer su estructura interna. La API de Drupal aporta funciones de comunicación con el sistema y con los módulos del núcleo. Los detalles de la API de Drupal están disponibles en http://api.drupal.org/api/drupal.
Para aprender a desarrollar módulos y entender el funcionamiento de los módulos disponibles, utilizaremos fundamentalmente estas estrategias de aprendizaje: