Disabilita o rimuovi CSS di default in Ninesixty per Drupal 6.x

Finchè abbiamo difronte un tema realizzato in tutto e per tutto da noi stessi non è un problema disabilitare o rimuovere un CSS che Drupal include di default, basterà infatti aggiungere nel file "template.php" del nostro tema le seguenti righe e modificare le righe con "unset(...)" per rimuovere/disabilitare i css che ci interessano:

function phptemplate_preprocess_page(&$vars)
{
$css = $vars['css'];
unset($css['all']['module']['modules/comment/comment.css']);
$vars['styles'] = drupal_get_css($css);
}

Le cose un po' si complicano se abbiamo a che fare con un tema-framework come "ninesixty", infatti in esso sono presenti alcune speciali funzioni che gestiscono l'inclusione dei molti file CSS su cui si basa il framework. Allora se non vogliamo stravolgere il già ottimo lavoro fatto dagli sviluppatori dobbiamo comportarci in modo gentile con il tema e non aggiungere inutili righe.

In questo caso (tema "Ninesixty") per disabilitare/rimuovere file CSS che drupal include di default ci bastera seguire i seguenti passi:

1) Aprire il file "temaplate.php" che è posizionato all'interno della directory "/ninesixty/";

2) Probabilmente sarà la prima funziona che incontrerete, ma in ogni caso cercato la seguente funzione:

PER IL MOMENTO NE IGNORIAMO IL CONTENUTO CI BASTA AVERLA IDENTIFICATA

/**
 * Preprocessor for page.tpl.php template file.
 */
function ninesixty_preprocess_page(&$vars, $hook) { 
//...
//...
// PER IL MOMENTO NE IGNORIAMO IL CONTENUTO CI BASTA AVERLA IDENTIFICATA
}

 

3) A questo punto dovremo cercare verso la fine della funzione le seguenti righe:

// Make sure framework styles are placed above all others.
$vars['css_alt'] = ninesixty_css_reorder($vars['css']);
/comment.css']);
$vars['styles'] = drupal_get_css($vars['css_alt']);
}

... in cui la cui prima "riga" effettua alcune operazione ricorsive sui css da includere, mentre la seconda passa l'intero risultato appena processato al core di Drupal il quale "conscerà" ora la lista dei CSS da includere.

4) A questo punto ci basterà posizionarzi precisamente nel mezzo delle due righe, in questo modo "amplificheremo" l'effetto della prima righa, ma allo stesso tempo non modificheremo neanche una lettera della funzione richiamata nella prima riga. In questo modo si risparmiano inutili righe di codice ed inutili manomissioni in funzioni già ben sviluppate e testate dagli sviluppatori di "ninesixty".

Le righe che fra poco vi verranno mostrate ovviamente non sono vincolanti ma il vostro risultato dovrà essere in linea con il codice, infatti io ho aggiunto una sola riga che disabilità il CSS di default per i commenti, ma voi potrete disabilitate/rimuovere tutti i CSS che desiderate.

// Make sure framework styles are placed above all others.
$vars['css_alt'] = ninesixty_css_reorder($vars['css']);
unset($vars['css_alt']['all']['module']['modules/comment/comment.css']);
$vars['styles'] = drupal_get_css($vars['css_alt']);
}

5) Voilà, ecco fatto! A questo punto se ricaricate il vostro Drupal e guardate bene nell'header notere che non sarà più presente il CSS da voi disabilitato/rimosso.

AttachmentSize
template.php_.tar.gz1.73 KB

Post new comment

The content of this field is kept private and will not be shown publicly. If you have a Gravatar account, used to display your avatar.
Mollom CAPTCHA (play audio CAPTCHA)
Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated.

Crediti

Gnu Project Gnu Project Gnu Project Gnu Project Copyright by http://kiuz.it Gnu Project Powered by Site 5 Hosting Drupal Logo by Pills of Bits