Drupal 7: ¿Cómo modificar la salida HTML del menú?

stoy tratando de modificar la salida HTML en un tema de Drupal 7 que estoy creando.

ásicamente, en lugar de las <li> s que contienen simplemente <a> s con texto, quiero incluir algo de HTML adicional dentro de la <a>.

Sé que es posible modificar el HTML creado por los menús en Drupal. Puedo ver la siguiente llamada en page.tpl.php:

<?php print theme('links__system_main_menu', array(
      'links' => $main_menu,
      'attributes' => array(
        'id' => 'main-menu',
        'class' => array('links', 'clearfix'),
      ),
      'heading' => array(
        'text' => t(''),
        'level' => 'h2',
        'class' => array('element-invisible'),
      ),
    )); ?>

que aparentemente llama a la función de tema, que crea la salida. Una forma de modificar la salida sería modificar la función theme_links en theme.inc, ¿verdad?

http: //api.drupal.org/api/drupal/includes--theme.inc/function/theme_link

También sé que puedes poner un gancho en template.php para anular la función que crea el HTML. No puedo entender cómo crear la función de anulación real. ¿Alguien puede señalarme en la dirección correcta, por favor?

Respuestas a la pregunta(1)

Su respuesta a la pregunta