我有一个Wordpress网站并且有一个我想要链接的.js文件,所以我可以调用脚本。经过大量研究,我发现必须在functions.php中使用钩子。我尝试了各种各样的变化,但无法获得正式的工作方法,但我找到了一种方法可行,但在此过程中只是打破了网站的其余部分。
我做错了什么?我知道get_stylesheet_directory_uri()
& get_template_directory_uri()
与父母和儿童主题的差异,但似乎没有任何区别。
这里的官员'不起作用的方式:
function add_jquery_script() {
wp_enqueue_script(
'my-script', // name your script so that you can attach other scripts and de-register, etc.
get_stylesheet_directory_uri() . 'http://<site>.com/wp-content/themes/dt-the7/custom-scripts.js', // this is the location of your script file
array('jquery') // this array lists the scripts upon which your script depends
);
}
根本不推荐&#39;有效的方式,但打破网站的其余部分:
function add_jquery_script() {
echo '<script type="text/javascript" src="http://<site>/wp-content/themes/dt-the7/custom-scripts.js"></script>' . "\n";
}
add_action('wp_head', 'add_jquery_script');
一如既往,任何帮助都非常感激。谢谢你们
更新
在回显get_stylesheet_directory_uri()
之后,我可以看到我的网址需要是相对的,现在应该如下,但它仍然不起作用。
function add_jquery_script() {
wp_enqueue_script(
'my-script', // name your script so that you can attach other scripts and de-register, etc.
get_stylesheet_directory_uri() . '/custom-scripts.js', // this is the location of your script file
array('jquery') // this array lists the scripts upon which your script depends
);
}
答案 0 :(得分:2)
你需要调用函数add_jquery_script();
才可以输出任何东西 - 非常简单,容易被遗忘。
由于引用错误,脚本破坏了您的代码,var price
定义应该在函数内移动,因此它位于函数的scope
中。
http://learn.jquery.com/javascript-101/scope/
$(document).ready(function () {
refresh();
$('#bittrex-price').load(bittrexPrice);
});
function refresh() {
var price = "[domain hidden]/realtime/bittrex-realtime.php";
setTimeout(function (price) {
$('#bittrex-price').fadeOut('slow').load(price, params).fadeIn('slow');
$('#bittrex-vol').fadeOut('slow').load(price, params2).fadeIn('fast');
refresh();
}, 1000);
}