PageSpeed Tools et validator.w3.org

Nouveau WRInaute
Bonjour,
J'ai essayé d'améliorer le temps de chargement de mon site et j'ai rencontré un problème que je n'arrive pas à résoudre.
Après avoir analysé ma page avec PageSpeed Insights et suite à un message « Éliminer les codes JavaScript et CSS qui bloquent l'affichage du contenu au-dessus de la ligne de flottaison », j’ai envoyé les JavaScripts dans le footer avec cette fonction :

function footer_enqueue_scripts() {
remove_action('wp_head', 'wp_print_scripts');
remove_action('wp_head', 'wp_print_head_scripts', 9);
remove_action('wp_head', 'wp_enqueue_scripts', 0);
add_action('wp_footer', 'wp_print_scripts', 5);
add_action('wp_footer', 'wp_enqueue_scripts', 5);
add_action('wp_footer', 'wp_print_head_scripts', 5);
}
add_action('after_setup_theme', 'footer_enqueue_scripts');

Depuis PageSpeed n’affiche plus ce message et le score est monté, par contre maintenant quand j’analyse le site avec validator.w3.org une erreur que je n'ai pas eu avant apparaît :

Error: Element title not allowed as child of element head in this context. (Suppressing further errors from this subtree.)
From line 1, column 679; to line 1, column 685
s</title> <title>Huile

Contexts in which element title may be used:
In a head element containing no other title elements.
Content model for element head:
If the document is an iframe srcdoc document or if title information is available from a higher-level protocol: Zero or more elements of metadata content, of which no more than one is a title element and no more than one is a base element.
Otherwise: One or more elements of metadata content, of which exactly one is a title element and no more than one is a base element.

Voici le code que j'ai dans header.php :

<!DOCTYPE html>

<html <?php language_attributes(); ?>>

<head>

<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" >


<title><?php wp_title('|', true, 'right'); ?></title>


<?php if ( is_singular() ) wp_enqueue_script( "comment-reply" ); ?>


<?php wp_head(); ?>


</head>

Peut être quelqu’un à une idée comment résoudre ce conflit. Ça fait déjà 2 jours que j’essaye de trouver une solution…
Merci d’avance
 
WRInaute accro
"Qualité et précision des questions conditionnent celles des réponses"

Sans URL on ne sait pas le code HTML généré là:
Code:
From line 1, column 679; to line 1, column 685
s</title> <title>Huile
Donc on ne saurait pas bien t'aider.
 
WRInaute accro
Tu as 2 balises <title>, c'est parce que
PHP:
<span class="syntaxdefault"><?php wp_head</span><span class="syntaxkeyword">();</span><span class="syntaxdefault"> ?></span>
l'affiche déjà.

Donc tu n'as pas besoin de :
PHP:
<span class="syntaxhtml"><title><span class="syntaxdefault"><?php wp_title</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'|'</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> true</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">'right'</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> ?></span></title></span>
 
Nouveau WRInaute
Merci beaucoup pour votre réponse, j’ai déjà essayé de le faire, et quand je l'ai supprimé, validator.w3.org etait content, par contre PageSpeed Tools recommence à raller et sort la liste des js encore plus longue que celui que j’ai eu avant de mettre les JavaScripts dans le footer :

Supprimez les ressources JavaScript qui bloquent l'affichage :

http: //.../wp-includes/js/comment-reply.min.js
http://.../…gins/mystickymenu/js/mystickymenu.min.js
http://.../wp-includes/js/jquery/jquery.js
http://.../…includes/js/jquery/jquery-migrate.min.js
http://.../…wp-content/themes/hemingway/js/global.js
http://.../…fixed-widget/js/q2w3-fixed-widget.min.js
http://.../…/languages/jquery.validationEngine-fr.js

J’ai vu qu’il est possible de corriger ce problème avec atribut async, mais je n’arrive pas à comprendre où et comment je peux l’insérer pour qu’il s’applique à tous mes JavaScript. J’ai encore très peu de connaissance dans le webmastering …
 
Nouveau WRInaute
J'ai oublié de préciser que PageSpeed Tools demande de supprimer les ressources Javascript que pour la version Mobile, pour la version ordinateur tout est ok.
 
Discussions similaires
Haut