Cuestión tratada en este artículo: Haz que Drupal sepa que tu módulo existe.
Drupal hook descrito: hook_help
En Drupal 5.x la información básica sobre tú módulo, su nombre y descripción, ya no vienen dad por hook_help. Ahora, en su lugar, todos los módulos necesitan tener un archivo nombredelmodulo.info, que contiene información sobre el módulo (para más detalles ver Writing .info files (Drupal 5.x)). Para nuestro ejemplo, "onthisdate.info'.
El formato general es:
Sin este archivo, nuestro módulo ¡no se mostrará en la lista de módulos!
En nuestro ejemplo, podría contener lo siguiente:
Debemos añadir el código anteridor a un archivo llamado onthisdate.info antes de guardarlo en el directorio sites/all/modules/onthisdate.
También hay tres líneaas de código opcionales, que pueden aparecer en el archivo .info:
En nuestro módulo de ejemplo no se aplican y se han omitido. Si defines módulos dependientes (dependencies) para tu módulo, Drupal no te dejara activar el módulo hasta que los módulos designados sean activados.
Si asignas una cadena de caracteres a tu módulo (package), aparecerá en I admin/build/modules junto con otros módulos con la misma categoría. Si no lo asignas, aparecerá com 'Uncategorized'. No asignar un package a nuestro módulo es perfectametne correcto; en general, los packages en módulos que están pensados para usarse juntos. Si tienes dudas deja este campo en blanco.
Ejemplos de propuestas de items apropiados para el campo package:
La línea de version, proporcionará la versión para que los usuarios consigan el módulo directamente desde CVS.
Los archivos usan el formato ini y pueden incluir un ; $Id$ to have CVS insert the file ID information.
Para más información sobre ini file formatting, puedes ver PHP.net parse_ini_file documentation.
También podemos proporcionar ayuda e información adicional sobre nuestro módulo. Debido a al uso del archvio .info descrito, este hook es ahora opcional. Sin embargo, es una buena idea implementarlo. El nombre del hook para esta función es 'help', así que empieza con la función onthisdate_help:
}
la variable $section muestra la ayuda para el contexto: en que parte de Drupal o del módulo estamos buscando. El camino recomendado para procesar esta variable es con una estructura switch.
$output = '';
switch (
$section) {return
$output;El case admin/help#modulename es usado por el core de Drupal para enlazar desde la página principal de la ayuda (/admin/help or ?q=admin/help). Es posible que en ocasiones quieras añadir más texto para ayudar más a los usuarios con los mensajes de ayuda.
Más información sobre el help hook:
Drupal HEAD
Añade el código mostrado arriba al archivo onthisdate.module antes de guardarlo en tu instalación Drupal.
Comentarios
Código
No entiendo la siguiente estructura:
$output = '';
switch ($section) {
case "admin/help#onthisdate":
$output = '<p>'. t("Displays links to nodes created on this date"). '</p>';
break;
}
Para que define a $output como un texto en blanco si luego lo va a redefinir en el switch ?
Parece que tienes razón
Pues parece que tienes razón, tampoco le veo sentido,
no me había dado cuenta, pues sólo he traducido rápidamente el tutorial del inglés.
Si alguien con más conocimientos puede confirmar o desmentir se agradecería :)
Aprendiendo Drupal
Limpiar Variables
Yo imagino que primero la declara en blanco para limpiar la variable. Es una sana costumbre antes de cargarle cualquier dato, ya que si antes la hemos usado puede quedar "basura" de su uso anterior.