2017-10-21 83 views
1

J'essaie de faire quelque chose qui devrait être très simple, mais qui ne cesse de me déranger. J'ai le code suivant dans functions.php:Le script ne se charge pas dans le pied de page wordpress

// Load HTML5 Blank conditional scripts 
function html5blank_conditional_scripts(){ 
    if (!is_single()) { 
     wp_register_script('imagesloaded', get_template_directory_uri() . '/js/lib/imagesloaded.pkgd.min.js', true); // Conditional script(s) 
     wp_enqueue_script('imagesloaded'); // Enqueue it! 

     wp_register_script('masonry', get_template_directory_uri() . '/js/lib/masonry.pkgd.min.js', true); // Conditional script(s) 
     wp_enqueue_script('masonry'); // Enqueue it! 

     wp_register_script('soinit', get_template_directory_uri() . '/js/soinit.js', true); // Conditional script(s) 
     wp_enqueue_script('soinit'); // Enqueue it! 
    } 

} 
add_action('wp_enqueue_scripts', 'html5blank_conditional_scripts'); // Add Conditional Page Scripts 

problème principal est ici: scripts « imagesloaded » et « » maçonnerie sont ajoutées avec succès au pied de page, tandis que le script « soinit » continue à s'ajouter à la tête

+0

Parce que c'est un script 'init'? –

+0

@FlashThunder Je peux l'appeler comme j'aime, même résultat. – sorrentix

Répondre

0

les fonctions est:

wp_register_script(string $handle, string $src, array $deps = array(), string|bool|null $ver = false, bool $in_footer = false) 

si vous devez fournir tous les paramètres, même si elles sont vides

wp_register_script('soinit', get_stylesheet_directory_uri() . '/js/soinit.js', '', '', true); 
+0

Je ne comprends pas pourquoi je devrais remplacer les valeurs par défaut, mais cela fonctionne, merci. – sorrentix

+0

vous ne remplacez pas les valeurs par défaut, la fonction considère chaque argument dans sa position spécifique, si vous passez 'true' comme troisième argument, la fonction suppose que vous passez' $ deps = true' et c'est une erreur ... – DaFois

+0

clarifier, passez une bonne journée. – sorrentix