2014-04-18 43 views
0

我試圖在WP插件運行這個jQuery ...的JQuery/PHP在WP插件

<?php 

function process_post(){ 

    wp_enqueue_script('namespaceformyscript', 'http://code.jquery.com/jquery-1.9.1.min.js', array('jquery')); 

    ?> 

    <script type="text/javascript" > 
     jQuery(document).ready(function($) { 

      alert('hello'); 
     }); 
    </script> 

    <?php 

} 

add_action('init', 'process_post'); 


?> 

此警告只是沒有發生......

我什麼我做錯了?

回答

1

至於調用jQuery的,這已經足夠了:

wp_enqueue_script( 'jQuery的');

這確保即使多個插件會調用jquery(他們可能會) - 它不會被多次加載。

其次,你沒有使用正確的鉤子。大約從初始化鉤文檔:

Runs after WordPress has finished loading but before any headers are sent. 

http://codex.wordpress.org/Plugin_API/Action_Reference/init

作爲一個完整的解決方案,試試這個(未經測試,應該工作,雖然):

<?php 


load_scripts() { 
    wp_enqueue_script('jquery'); 

    wp_enqueue_script('yourcustomjavascript.js', 
    WP_PLUGIN_URL.'/yourpluginfolder/yourcustomjavascript.js', 
    array('jquery')); 

} 

ADD_ACTION('admin_enqueue_scripts ','load_scripts');

通過調用這樣的腳本,你已經加載的jQuery並確保它不會加載多次(由你的插件和一些其他的等等)你還相信,jQuery是yourcustomjavascript.js爲前裝你告訴WP它依賴於jQuery。

http://codex.wordpress.org/Function_Reference/wp_enqueue_script

現在... jQuery代碼會以HTML模板,以及yourcustomjavascript.js文件,你可以創建工作。