Dlaczego style.css nie jest kolejkowane?


10

Mam dość podstawowy motyw i właśnie dowiedziałem się, że mój plik style.css nie jest ładowany do <head>. Już szukałem, ale nie mogę się dowiedzieć, dlaczego się nie ładuje.

Sprawdziłem global $wp_stylesjuż obiekt, ale nic nie znalazłem:

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 );

Wewnątrz obiektu również nie mogę znaleźć moich zarejestrowanych / kolejkowanych arkuszy stylów (są ładowane), więc sądzę, że robię też coś źle, sprawdzając to. Jakieś pomysły?

Uwaga:
Jeśli dodam go do kolejki ręcznie, mój plik style.css zostanie załadowany. Po prostu automatyczne ładowanie nie działa. Co więcej, mogę uzyskać dostęp do pliku get_theme_data( TEMPLATEPATH.'/style.css' );bez problemu.

Odpowiedzi:


18

Arkusze stylów motywów zwykle nie są kolejkowane, zwykle są ładowane przy użyciu ...

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

Więc naturalnie nie widzisz ich (it) w tablicy stylów ..

Możesz oczywiście (jeśli wolisz) zamiast tego użyć kolejki.


6
Główny arkusz stylów style.css - podobnie jak każdy inny arkusz stylów - musi być albo zakodowany na stałe w głowicy dokumentu, albo ręcznie podłączony do wp_headlub wp_print_styles. WordPress nie przechwytuje automatycznie style.css .
Chip Bennett

2
Myślałem (do tej pory), że ładowanie style.css odbywa się automatycznie ... dzięki za wyjaśnienie! +1 zarówno.
kaiser

2

Zalecany sposób to zrobić jest enqueue-ing style.css w functions.php tematu.

Dodaj to do 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' );

Możesz odwołać się do tego w podręczniku motywów WordPress tutaj i zobaczyć przykłady tutaj .

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.