Como carregar o css no rodapé [duplicado]

8

Eu estava tentando mover a carga do meu style.css no rodapé do meu tema do wordpress. Eu já fiz algo parecido com 2 arquivos js e funciona bem, eles carregam no rodapé:

function my_init() {
    if (!is_admin()) {
        wp_deregister_script('jquery');
        wp_register_script('jquery', 'http://www.studionews24.com/wp-content/themes/network/js/jquery.min.js', false, '1.3.2', true);
        wp_enqueue_script('jquery');

        // load a JS file from my theme: js/theme.js
        wp_enqueue_script('my_script', 'http://www.studionews24.com/wp-content/themes/network/js/menu-resp.js', array('jquery'), '1.0', true);
    }
}
add_action('init', 'my_init');

Agora eu estava tentando mover no rodapé também o style.css e manter apenas algumas regras css inline na tag. Eu tentei wp_enqueue_style mas parece que não funciona bem para mim.

Alguém poderia me ajudar a encontrar uma solução inteligente?

    
por Giulio Bambini 01.05.2015 / 18:09

1 resposta

21

Na verdade, todos os estilos devem ser colocados no cabeçalho. Então o WordPress não tem um parâmetro para fazer isso na função wp_enqueue_style , porque tradicionalmente todos os estilos foram adicionados no head . Recentemente, muitos sites migraram para um sistema em que os estilos críticos "acima da dobra" são carregados na cabeça, enquanto outros estilos são carregados no rodapé.

Então, aqui está uma maneira de fazer isso: Você pode usar a função print_late_styles() que é chamada no rodapé. Você só precisa enfileirar seus estilos quando o cabeçalho já foi passado.

Então você precisa encontrar algum hook que é chamado em cada página e depois de wp_head hook. Por exemplo, get_footer pode ser um.

function prefix_add_footer_styles() {
    wp_enqueue_style( 'your-style-id', get_template_directory_uri() . '/stylesheets/somestyle.css' );
};
add_action( 'get_footer', 'prefix_add_footer_styles' );
    
por Emetrop 01.05.2015 / 18:29