2011-08-02 15 views
0

我使用的是Wordpress,我想在一個jQuery腳本文件中使用<?php bloginfo('url'); ?>的值作爲變量。那可能嗎?如何?WordPress&jQuery - 導入<?php bloginfo('url'); ?>腳本文件

在我的script.js文件,我使用的功能:

$("#board").load("http://www.mysite.com/ajax/",{slug:post_slug}); 

和「http://www.mysite.com」部分會改變(我要建一個主題)。

非常感謝您的時間和幫助。

回答

8

什麼你問的是不容易實現的,而不是在你的<head>元素設置一個JavaScript變量:

<script type="text/javascript"> 
    var site_url = '<?php bloginfo('url'); ?>'; 
</script> 

然後你就可以使用site_url變量在任何您的JS文件:

alert(site_url); 
+0

這回答了問題;-)但使用相對路徑也起作用。 – Gab

+0

確實,使用相對路徑是一條路。 –

0

我想你必須通過PHP運行Javascript腳本文件,而不是使用「http://www.mysite.com/ajax/」。

您還可以嘗試使用JavaScript屬性的window.location。

1
var bloginfo_url = "<?php bloginfo('url'); ?>"; 
$("#board").load(bloginfo_url + "/ajax/", {slug:post_slug}); 

但爲什麼不能使用相對URL?

$("#board").load("/ajax/", {slug:post_slug}); 
+0

他得到了外部'.js'文件中的代碼,所以PHP很可能不會被解析(除非他配置了他的Web服務器)。 – Matt

+0

@Matt:啊,好的。不過,我的觀點與相對URL仍然有效。 – Tomalak

+0

我同意相對URL點。 –

1

而不是使用http://my-site.com/ajax,我會建議使用admin_url('admin-ajax.php')這是一個標準的入口點處理Ajax調用在WP。 此外,還有wp_localize_script函數可以幫助您聲明JS變量。

+0

好的...當我想加載像我這樣的帖子時,你知道在哪裏可以找到有關使用這些示例的示例嗎? – Gab

+0

嗯,'wp_localize_script'是非常簡單的事情Codex(我鏈接到它)的例子。 – karevn

+0

wp_localize_script聲明變量好,但如何使用admin-ajax.php?我在哪裏可以找到一個howto? – Gab

相關問題