我正在開發一個Wordpress插件。我需要將插件目錄(可以根據個人的安裝情況進行更改)傳遞給jquery函數。如何將多個PHP變量傳遞給jQuery函數?
這樣做的最好方法是什麼?我可以使用的插件版本包含了PHP文件中的所有JavaScript,因此在瀏覽器中呈現之前,函數與其餘內容一起被解析。
我在看AJAX,但我認爲它可能比我需要更復雜。在這種情況下,我只能使用兩個變量(目錄,沒有用戶設置)。
正如我已閱讀其良好的做法,我試圖保持js和php分開。當插件初始化時,它調用的js文件:
//Wordpress calls the .js when the plugin loads
wp_enqueue_script('wp-backitup-funtions', plugin_dir_url(__FILE__) . 'js/wp-backitup.js', array('jquery'));
然後我在.js文件,並需要弄清楚如何生成以下變量:
dir = '<?php echo content_url() ."/plugins"; ?>';
dir = '<?php echo content_url() ."/themes"; ?>';
dir = '<?php echo content_url() ."/uploads"; ?>';
並運行解析以下請求:
xmlhttp.open("POST","<?php echo plugins_url() .'/wp-backitup/includes/wp-backitup-restore.php'); ?>",true);
xmlhttp.open("POST","<?php echo plugins_url() .'/wp-backitup/includes/wp-backitup-start.php'); ?>",true);
xmlhttp.open("POST","<?php echo plugins_url() .'/wp-backitup/wp-backitup-directory.php'); ?>",true);
xmlhttp.open("POST","<?php echo plugins_url() .'/wp-backitup/wp-backitup-db.php'); ?>",true);
window.location = "<?php echo plugins_url() .'/wp-backitup/backitup-project.zip'); ?>";
xmlhttp.open("POST","<?php echo plugins_url() .'/wp-backitup/wp-backitup-delete.php'); ?>",true);
內容URL和插件URL只/插件不同,/所以,如果我是很難,我只真正需要做一個PHP請求,然後把這個到JS。
您可能會感興趣的JQuery的' serializeArray()'函數將變量作爲單個數組來回傳遞。 –