Respuestas:
Drupal 7 core en realidad no define esta función.
links__system_main_menu
es un patrón de gancho de tema de la forma [base hook]__[context]
. Cuando los enlaces tienen un tema theme('links__system_main_menu', $vars)
, theme()
buscarán y usarán theme_links__system_main_menu()
si se ha definido. Si no, lo usará theme_links()
.
Ver theme () para la documentación oficial de este comportamiento. El Capítulo 3 del Desarrollo del Módulo Drupal 7 hace un excelente trabajo al explicar esto y proporciona varios ejemplos.
Por cierto, el mismo principio se aplica a los archivos de plantilla. Si, por ejemplo, llamamos theme('node__article__1', $vars)
, theme()
buscará un node--article--1.tpl.php
archivo y luego node--article.tpl.php
, finalmente , recurrirá a node.tpl.php
si ninguno de ellos está definido.
theme_links__system_main_menu()
actualmente no está definido desde Drupal, pero Drupal lo usará MYTHEME_links__system_main_menu()
, si lo define en su tema.
function MYTHEME_links__system_main_menu($variables) {
$html = "<div>\n";
$html .= " <ul>\n";
foreach ($variables['links'] as $link) {
$html .= "<li>".l($link['title'], $link['path'], $link)."</li>";
}
$html .= " </ul>\n";
$html .= "</div>\n";
return $html;
}
Puede encontrar más información en http://drupal.org/node/1033442#comment-5076932 .