Temi dell'interfaccia utente jQuery


8

Voglio usare nel mio modulo il tema dell'interfaccia utente jQuery personalizzato dal controller . Qual'è il miglior modo di farlo?


Non sono riuscito a creare il tag dell'interfaccia utente jQuery .
ya.teck

non può essere separato da spazi oppure capisce che sono 2 tag diversi :)
Alex Weber,

Questa è la prima domanda taggata con jQuery Ui . Non ho il permesso di creare un nuovo tag :)
ya.teck

A quale versione di Drupal sei interessato?
kiamlaluno

Sto usando Drupal 7.
ya.teck

Risposte:


6

Supponendo che tu stia utilizzando il modulo jquery_ui , tutto ciò che devi fare è:

  • Crea un download personalizzato per l'interfaccia utente di jQuery incluso il tuo tema personalizzato da ThemeRoller e copialo nella cartella jquery_ui, seguendo le istruzioni nel README.txt del modulo
  • In alternativa, puoi semplicemente creare il tuo tema personalizzato, scaricarlo e copiarlo nella directory dei temi dell'interfaccia utente di jQuery

MODIFICARE:

Tuttavia, poiché Drupal 7 viene già fornito con l'ultima interfaccia utente jQuery, tutto ciò che devi fare è scaricare il tema personalizzato dell'interfaccia utente jQuery e includerlo utilizzando uno dei seguenti metodi:

  • Copia la directory nella cartella del tuo tema e includi il file css nel .info del tuo tema
  • Crea un modulo personalizzato e implementa hook_init () e usa drupal_add_css () per aggiungere il tuo foglio di stile personalizzato:

    function mymodule_init () {$ options = array ('group' => CSS_THEME, 'every_page' => TRUE, 'weight' => 9999); drupal_add_css (drupal_get_path ('module', 'mymodule'), 'mymodule.css', $ opzioni); }


Non ho trovato la versione drupal 7 di jquery_ui e non penso che copiare i miei file nella directory principale di drupal sia il modo migliore.
ya.teck

Mio cattivo, d'accordo, ho modificato il mio post originale per risolvere questo problema :)
Alex Weber,

Drupal_add_css non aggiunge semplicemente nuovi file CSS ma non li sostituisce? Userò l'interfaccia utente di jQuery solo su una singola pagina.
ya.teck

drupal_add_css sostituisce i file con lo stesso nome, quindi se ad esempio il tuo css 'jquery.ui.theme.css' verrà usato al posto della versione predefinita
Alex Weber,

3

Per Drupal 7, il tema Stock Seven fa questo ( collegamento al repository ) (abbreviato):

function seven_css_alter(&$css) {
  if (isset($css['misc/ui/jquery.ui.theme.css'])) {
    $css['misc/ui/jquery.ui.theme.css']['data'] = drupal_get_path('theme', 'seven') . '/jquery.ui.theme.css';
  }
}

Modifica di conseguenza, ovvero sostituisci "sette" con il nome del tuo tema e indica il percorso del file CSS del tuo tema dell'interfaccia utente jQuery.


3

Se stai aggiungendo l'interfaccia utente tramite drupal_add_library(), puoi cambiare lo stile usando hook_library_alter(). Per esempio:

/**
 * Implements hook_library_alter().
 */
function YOURMODULENAME_library_alter(&$libraries, $module) {
  unset($libraries['ui']['css']['misc/ui/jquery.ui.theme.css']);
  $libraries['ui']['css']['path/to/your/custom/theme/jquery.ui.theme.css'] = array();
}

1
Penso che questo sia il metodo migliore perché probabilmente sarà specifico del modulo. Inoltre, ha funzionato per me.
Brandon Bearden,

2

Consiglio di utilizzare il modulo tema dell'interfaccia utente jQuery che gestisce più UI generate da THEMEROLLER e allega queste UI ai temi di Drupal. Quindi imposta le classi CSS dell'interfaccia utente jquery per gli elementi in Drupal con i moduli come classe blocco / classe nodo / webform css, ecc.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.