使用wp_enQueue_script的协议中性URL(SSL问题)?

时间:2013-01-16 作者:JSP

如何使用wp\\u enqueue\\u脚本来获取与协议无关的URL?以下是我目前使用它的方式:

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

我看到了home_url() 是否有协议意识所以我想theme_url() 也可能是,但我在使用它时,得到了下面的错误。

Call to undefined function theme_url()

2 个回复
最合适的回答,由SO网友:webaware 整理而成

您不能--URL必须有一个协议,WordPress才能将其排队。不过,您可以做的是检测要使用的协议,然后使用该协议。

$protocol = is_ssl() ? \'https\' : \'http\';
$url = "$protocol://example.com/resource";
但是对于将脚本从主题中排队,您应该使用get_template_directory_uri()get_stylesheet_directory_uri() 已处理SSL的:

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

SO网友:Bill Erickson

您也可以取消协议,如下所示:

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

结束

相关推荐

如何在WordPress网络中使用通配符SSL?

我正在使用WordPress网络建立一个网站网络,但由于每个网站都需要在Facebook上,所以现在需要SSL安全保护。(注意:不仅仅是管理员,还有整个正面网站)我为整个域购买了通配符SSL证书,并在站点上使用子域。实例com公司有没有人有简单的步骤来实现这一点,因为我曾尝试搜索谷歌,但并不是很成功。访问https://site.example.com 不显示博客,而是显示服务器默认页面。谢谢