I’ve got a simple header file which calls the wp_head method, however when i inspect the source the css links are made in the body and the <head> is empty.

My header.php:

<!DOCTYPE html>
<html lang="en">

<head>
<?php wp_head(); ?>
</head>
<body>
<?php get_template_part( 'components/navigation/navigation', 'main' ); ?>

My functions.php:

<?php 
function load_scripts() {
    echo ' test';
    wp_enqueue_style( 'style', get_stylesheet_uri() );
}
add_action('wp_enqueue_scripts', 'load_scripts');

?>

Thanks!

1 Answer
1

This is your browser’s attempt to avoid invalid markup. Your echo ' test'; outputs something that does not belong in a head tag, so the browser closes it and opens the body tag. If you look at the actual unprocessed response from the server, it won’t appear this way, but that echo shouldn’t be there regardless, and this issue will disappear when you remove it.

Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *