我一直在開發一個非常簡單的WordPress插件,並希望對頁面上某些字段進行實時驗證,這是我卡住的地方。我一直在尋找有效的東西,而且我根本無法使其發揮作用。WordPress插件管理頁面 - 在鏈接的php文件中使用WordPress功能
我一直在試圖讓ajax正常工作,我知道我錯過了一些明顯的東西,我只是無法弄清楚。
主要功能文件包括此註冊我的js文件。
function on_screen_validation() {
wp_enqueue_script("field_validation", path_join(WP_PLUGIN_URL, basename(dirname(__FILE__))."/field-validation.js"), array('jquery'));
}
add_action('admin_print_scripts', 'on_screen_validation');
js運行此代碼來捕獲onblur命令並將值傳遞給php驗證文件。
jQuery(document).ready(function() {
//run field validation on username on blur
jQuery('.valusername').blur(function() {
var usernameID = jQuery(this).attr('id');
var usernameVal = jQuery('#'+usernameID).val();
var thisFunction = 'validateUserName';
jQuery.post("mywebaddress...validation.php",{Function: thisFunction, thevars: usernameVal}, function(data) {
alert(data); //would update validation message here
});
});
});
而且validation.php腳本是這樣的:
if(isset($_POST['Function'])){
call_user_func($_POST['Function'], $_POST['thevars']);
}
function validateUserName($username){
if (username_exists($username)) {
echo $username.' does exist';
} else {
echo $username.' doesnt exist';
}
}
很顯然,我只是用警報現在,以確保數據經過適當的檢查。
如果我拿出WordPress的username_exists函數,只是回顯一個字符串,它可以正常工作。但是使用username_exists,它會創建一個500內部服務器錯誤。我需要知道如何獲得這個外部validation.php文件來識別WordPress的功能(我認爲),到目前爲止我找不到任何東西。
感謝您的閱讀...對於長時間的解釋抱歉,我只是想確保上下文都在那裏,所以它是有道理的(我希望!)!
乾杯,馬特
也許是[WordPress的答案](http://wordpress.stackexchange.com)的問題? – 2011-06-24 04:26:47
@KeokiZee:這是一個關於話題的地方,所以我傾向於放棄它。 –