Por que o style.css não está sendo enfileirado?

10

Eu tenho um tema bem básico e descobri que meu arquivo style.css não é carregado no <head> . Eu já procurei por aí, mas não consegui descobrir, por que não está carregando.

Eu já inspecionei o objeto global $wp_styles , mas não consegui encontrar nada:

function style_test() 
{ 
    $wp_styles = new WP_Styles();

    echo '<pre>'; 
        // $wp_styles->enqueue == completely empty
        print_r( $wp_styles->registered ); 
    echo '</pre>'; 
} 
add_action( 'wp_print_scripts', 'style_test', 0 );

Dentro do objeto eu também não consigo encontrar minhas folhas de estilo registradas / enfileiradas (elas são carregadas), então eu acho que estou fazendo algo errado ao inspecionar isso também. Alguma idéia?

Nota:
Se eu enfileirá-lo manualmente, meu arquivo style.css será carregado. Apenas o carregamento automático não funciona. Ainda mais eu posso acessar o arquivo com get_theme_data( TEMPLATEPATH.'/style.css' ); sem nenhum problema.

    
por kaiser 13.04.2011 / 16:33

2 respostas

18

As folhas de estilo do tema geralmente não são enfileiradas, elas normalmente são carregadas usando ...

<link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( 'stylesheet_url' ); ?>" />

Então, naturalmente, você não os vê na matriz de estilos.

Você pode, é claro (se preferir) usar um enfileiramento.

    
por t31os 13.04.2011 / 16:40
1

A maneira recomendada de fazê-lo é colocar o style.css em enfileiramento no functions.php do tema.

Adicione isto ao functions.php

 /**
 * Load CSS and JS the right way
 */
function myprefix_load_css_and_js() {
    wp_enqueue_style( 'style', get_stylesheet_uri() );
}
add_action( 'wp_enqueue_scripts', 'myprefix_load_css_and_js' );

Você pode indicar isso no manual do tema WordPress aqui e ver exemplos < href="https://developer.wordpress.org/reference/functions/wp_enqueue_style/#comment-340"> aqui .

    
por Arun Basil Lal 26.08.2017 / 10:57