Muchas veces, durante el desarrollo de una web con Drupal, nos encontramos que los módulos del núcleo y los contribuidos nos añaden por defecto muchos archivos css que nos cargan la web de estilos innecesarios. Normalmente, por prisas o costumbre, lo primero que se nos ocurre es ir reescribiendo el código css en nuestro tema, redefiniendo aquello que creamos necesario.
Pero este trabajo puede ser muy laborioso y la hoja de estilos resultante puede ser muy engorrosa. Tenemos otra opción más eficiente: no cargar los estilos que no consideremos necesarios. Para ello, podemos utilizar alguno de los módulos contribuidos que aporta la comunidad, o bien utilizar unas pocas líneas de código.
La siguiente función te permite realizar esto:
function YOUR_THEME_css_alter(&$css) {
// Remove Drupal core css
$exclude = array( 'modules/aggregator/aggregator.css' => FALSE,
'modules/block/block.css' => FALSE,
'modules/book/book.css' => FALSE,
'modules/comment/comment.css' => FALSE,
'modules/dblog/dblog.css' => FALSE,
'modules/field/theme/field.css' => FALSE,
'modules/file/file.css' => FALSE,
'modules/filter/filter.css' => FALSE,
'modules/forum/forum.css' => FALSE,
'modules/help/help.css' => FALSE,
'modules/menu/menu.css' => FALSE,
'modules/node/node.css' => FALSE,
'modules/openid/openid.css' => FALSE,
'modules/poll/poll.css' => FALSE,
'modules/profile/profile.css' => FALSE,
'modules/search/search.css' => FALSE,
'modules/statistics/statistics.css' => FALSE,
'modules/syslog/syslog.css' => FALSE,
'modules/system/admin.css' => FALSE,
'modules/system/maintenance.css' => FALSE,
'modules/system/system.css' => FALSE,
'modules/system/system.admin.css' => FALSE,
'modules/system/system.base.css' => FALSE,
'modules/system/system.maintenance.css' => FALSE,
'modules/system/system.messages.css' => FALSE,
'modules/system/system.menus.css' => FALSE,
'modules/system/system.theme.css' => FALSE,
'modules/taxonomy/taxonomy.css' => FALSE,
'modules/tracker/tracker.css' => FALSE,
'modules/update/update.css' => FALSE,
'modules/user/user.css' => FALSE,
'misc/vertical-tabs.css' => FALSE,
// Remove contrib module CSS
drupal_get_path('module', 'views') . '/css/views.css' => FALSE, );
$css = array_diff_key($css, $exclude);
}
Esta función deberá incluirse en el archivo 'template.php' de tu tema, y sustituir 'YOUR_THEME' en el nombre de la función por el nopmbre del tema.
Voilá!