web-dev-qa-db-fra.com

URL de protocole neutre avec wp_enqueue_script (problèmes SSL)?

Comment utiliser wp_enqueue_script pour obtenir des URL neutres au protocole? Voici comment je l'utilise actuellement:

<?php wp_enqueue_script('name', get_bloginfo('template_directory'). '/js/name.pack.js'); ?>

J'ai vu que home_url() est sensible au protocole et j'ai donc pensé que theme_url() le serait aussi, mais je reçois le message d'erreur ci-dessous lorsque je l'utilise.

Call to undefined function theme_url()

6
JSP

Vous ne pouvez pas - Les URL doivent avoir un protocole pour que WordPress les mette en file d'attente. Ce que vous pouvez faire, cependant, c'est détecter le protocole à utiliser, puis l'utiliser.

$protocol = is_ssl() ? 'https' : 'http';
$url = "$protocol://example.com/resource";

Mais pour les scripts de mise en file d'attente de votre thème, vous devez utiliser get_template_directory_uri () ou get_stylesheet_directory_uri () qui gère déjà SSL:

wp_enqueue_script('name', get_stylesheet_directory_uri() . '/js/name.pack.js');
8
webaware

Vous pouvez également laisser le protocole, comme ceci:

wp_enqueue_style( 'be-fonts', '//fonts.googleapis.com/css?family=Ubuntu:300,400,500' );
2
Bill Erickson