P.S. Questo primo approccio per qualcuno potrebbe sembrare assurdo (meglio l'opzione 2) - ho un sito dove ogni node-my_ctype.tpl.php ha il suo relativo page-node-my_ctype.tpl.php e posso affermare con una certa sicurezza che non avevo alternative...
opzione 2:
nel file .info del tuo tema aggiungi "stylesheets[all][] = my_style.css" in coda a quello/i esistente/i e il codice inserito dovrebbe essere riconosciuto in automatico dal nuovo tipo di contenuto... prova un pò e vedi come và...
si ma l'opzione 2 inserisce ill nuovo style per tutti i content type o sbaglio?
bisognerebbe vedere se funziona:
stylesheets[nuovo_content_type][] = my_style.css
Io per avere dei css per un solo modulo in uno dei miei siti ho utilizzato l'hook_init, se hai chiaro il concetto di hook di Drupal e nozioni di php ti risulterà facile, ecco il codice:
...ovviamente devi aggiungere anche un nuovo "my_style.css" nella cartella del tuo tema (dove è già presente "style.css") - e così via via aggiungi nuove stringhe nel file .info del tema "stylesheets[all][] = my_style.css" con relativo file *.css; sempre in quella cartella...
nella cartella del tema (sempre la stessa):
my_style_01.css
my_style_02.css
my_style_03.css
...in questo modo, se hai tanti CType puoi controllare il relativo *.css; separatamente senza dover mettere tutte le istruzioni dei vari Ctype in "style.css" (quello di default) che alla fine, se dovesse diventare lungo un "chilometro", un pò di confusione si potrebbe creare...
naturalmete questo è un mio approccio - ci sono diverse strade...
un grazie a danzisiweb per aver proposto una soluzione che non conoscevo...
kipper ma cosi facendo, inserendo il css nel file .info del tema mi carica tutti i fogli di stile per tutti i nodi, mentre come faccio a farne caricare per un tipo di contenuto un foglio di stile separato?
dico... ma non basta qualche regola ad hoc in style.css?
in genere è presente una classe specifica per tipo di nodo e spesso ce ne sono altre altrettanto utili. Senza contare che puoi inserire le tue.
un nuovo file CSS può esere necessario quando si tratta di inserire un sacco di regole che rallenterebbero il caricamento...di poco tra l'altro
grazie ragazzi per le risposte, comunque volevo sapere questa cosa perchè i 2 tipi di contenuto creati sono molto divrsi fra loro e ogni style.css sarebbe fatto ad hoc per il tipo di contenuto proprio, inglobandoli tutti sarebbe un solo style.css molto grande.
1. Crei un CType >>> my_ctype
2. http://www.drupalitalia.org/node/8718#comment-26731
3. node-my_ctype.tpl.php
4. page-node-my_ctype.tpl.php
5. nell'HEAD di >>> page-node-my_ctype.tpl.php inserisci es. >>>
<LINK href="/files_css/my_ctype.css" rel="stylesheet" type="text/css">
P.S. Questo primo approccio per qualcuno potrebbe sembrare assurdo (meglio l'opzione 2) - ho un sito dove ogni
node-my_ctype.tpl.php
ha il suo relativopage-node-my_ctype.tpl.php
e posso affermare con una certa sicurezza che non avevo alternative...opzione 2:
nel file .info del tuo tema aggiungi "
stylesheets[all][] = my_style.css
" in coda a quello/i esistente/i e il codice inserito dovrebbe essere riconosciuto in automatico dal nuovo tipo di contenuto... prova un pò e vedi come và...kipper
si ma l'opzione 2 inserisce ill nuovo style per tutti i content type o sbaglio?
bisognerebbe vedere se funziona:
stylesheets[nuovo_content_type][] = my_style.css
Io per avere dei css per un solo modulo in uno dei miei siti ho utilizzato l'hook_init, se hai chiaro il concetto di hook di Drupal e nozioni di php ti risulterà facile, ecco il codice:
function candidati_init() {
$browser = $_SERVER['HTTP_USER_AGENT'];
if (preg_match("/MSIE/", $browser)) {
drupal_add_css(drupal_get_path('module', 'candidati') .'/includes/candidati-msi.css');
} elseif(preg_match("/Safari/", $browser)) {
drupal_add_css(drupal_get_path('module', 'candidati') .'/includes/candidati.saf.css');
} elseif(preg_match("/Mozilla/", $browser)) {
drupal_add_css(drupal_get_path('module', 'candidati') .'/includes/candidati-moz.css');
} else {
drupal_add_css(drupal_get_path('module', 'candidati') .'/includes/candidati.css');
}
drupal_add_js('misc/jquery.alerts.js');
drupal_add_css('misc/jquery.alerts.css');
drupal_add_js(drupal_get_path('module', 'candidati') .'/includes/candidati.js');;
}
Il vantaggio è che solo per il modulo in questione Drupal carica quei css, forse puo esserti utilie anche come spunto!
...ovviamente devi aggiungere anche un nuovo "my_style.css" nella cartella del tuo tema (dove è già presente "style.css") - e così via via aggiungi nuove stringhe nel file .info del tema "
stylesheets[all][] = my_style.css
" con relativo file *.css; sempre in quella cartella...es.
nel file .info:
stylesheets[all][] = my_style_01.css
stylesheets[all][] = my_style_02.css
stylesheets[all][] = my_style_03.css
nella cartella del tema (sempre la stessa):
my_style_01.css
my_style_02.css
my_style_03.css
...in questo modo, se hai tanti CType puoi controllare il relativo *.css; separatamente senza dover mettere tutte le istruzioni dei vari Ctype in "style.css" (quello di default) che alla fine, se dovesse diventare lungo un "chilometro", un pò di confusione si potrebbe creare...
naturalmete questo è un mio approccio - ci sono diverse strade...
un grazie a danzisiweb per aver proposto una soluzione che non conoscevo...
kipper
kipper ma cosi facendo, inserendo il css nel file .info del tema mi carica tutti i fogli di stile per tutti i nodi, mentre come faccio a farne caricare per un tipo di contenuto un foglio di stile separato?
dico... ma non basta qualche regola ad hoc in style.css?
in genere è presente una classe specifica per tipo di nodo e spesso ce ne sono altre altrettanto utili. Senza contare che puoi inserire le tue.
un nuovo file CSS può esere necessario quando si tratta di inserire un sacco di regole che rallenterebbero il caricamento...di poco tra l'altro
Certified to Rock
ok Bohz, hai perfettamente ragione...
in ogni caso stavo solo dando una possibile soluzione alla richiesta "specifica" di asdomar
richiesta specifica >>> possibile soluzione
P.S. Ho bene in mente il nostro discorso su questa tematica al Pub 24 ;-)
Grazie
Ciao
Kipper
beato te! io non ricordo nulla!
Ciao
Certified to Rock
mah... sarà colpa della Guinness!?!? ;-)
grazie ragazzi per le risposte, comunque volevo sapere questa cosa perchè i 2 tipi di contenuto creati sono molto divrsi fra loro e ogni style.css sarebbe fatto ad hoc per il tipo di contenuto proprio, inglobandoli tutti sarebbe un solo style.css molto grande.
Bisogna "rinfrescare" a Bohz lo style pub24.css
??