2011-10-25 18 views
12

Ho un tema wordpress con un foglio di stile che deve essere caricato per ultimo, dato che i plugin css interferiscono con il mio tema. Mi stavo chiedendo se ci fosse un qualche tipo di funzione che potrei usare per far durare il foglio di stile principale nel mio tema.Ordinamento di fogli di stile di Wordpress?

+0

verifica la fonte della vostra pagina e vedere l'ordine corrente, quindi regolare il posto che state includendo il vostro 'css' –

risposta

0

Si potrebbe aggiungere alla fine del CSS si desidera ignorare altre classi

esempio 'importante!':

h1 { 
color:red !important; 
} 
+12

Aggiunta! importante non è mai una buona soluzione. – MarioRicalde

+0

Aggiungendo bene! Importante potrebbe non essere una "buona soluzione", ma la mia opinione è che è una soluzione migliore di essere costretti a caricare diversi file css in un ordine specifico. – Sasse

1

È sempre possibile utilizzare !important per ignorare altre regole, ma vi consiglio di assicurati inoltre che i fogli di stile del plug-in vengano inseriti correttamente utilizzando il seguente metodo. Aggiungendo il numero di priorità è possibile renderli in un secondo momento.

Assicurati che i fogli di stile vengano caricati prima di tutti gli script nel tag dell'intestazione.

Hai sempre bisogno di caricare i fogli di stile prima di script e wordpress si prende cura di che se si utilizza wp_enqueue_style e wp_enqueue_script

Ad esempio nella tua functions.php si dovrebbe usare

add_action('wp_enqueue_scripts', function(){ 
    wp_enqueue_style('main-style','http://yoursite.com/styles/main.css'); 
}, 99); 

Wordpress quindi posizionerà main.css nell'intestazione e assegnando 99 priorità significa che lo aggiungerà più tardi rispetto al resto (per impostazione predefinita la priorità di questa funzione è 10)

Assicurati di avere wp_head() nel file di intestazione.

saluti

17

quando si accodare i fogli di stile, utilizzare una priorità più alta, ad esempio:

add_action('wp_enqueue_scripts', array(&$this, 'theme_styles'), 99); 

Se alcuni plugin hanno ganci 'wp_print_styles', poi si deve usarlo al posto, come 'wp_print_styles 'verrà scritto dopo' wp_enqueue_scripts ', iirc.

E come si ha il controllo completo sopra il vostro tema, si potrebbe anche includere gli stili direttamente in header.php, se il fastidio con le azioni, non è il momento vale la pena ...

4

wp_print_styles funziona meglio. basta aggiungere una priorità per la chiamata, ad esempio 99.

function load_css() { 
 
     wp_enqueue_style('homepage-css', get_stylesheet_directory_uri() . '/css/homepage-css.css', array(), 0.256, 'all'); 
 
} 
 
add_action('wp_print_styles', 'load_css', 99);

Problemi correlati