我創建了一個Wordpress插件,以允許我的客戶創建具有rsvp功能併爲事件付費的事件。我對某些代碼需要放置的位置以及如何將表單提交到駐留在插件文件夾功能文件中的函數感到困惑。Wordpress使用AJAX提交表單
目前它返回一個空白警報。
我展示一個單一事件的頁面上這種形式:然後
<div id="rsvpContent">
<form id="Attendevent" action="">
<input id="attend" name="attend" type="checkbox" value="yes" /><label for="attent">Yes, I plan to attend.</label>
</form>
,我放入一般header.php文件這樣的:
$("#attend").click(function(){
var form = $("#Attendevent").serialize();
$.ajax({
type:'POST',
data:{"action":"Attending","data": form },
url: "<?php bloginfo('url'); ?>/wp-admin/admin-ajax.php",
beforeSend: function(){
alert(form);
},
success: function(data) {
alert(data);
}
});
});
然後,我把此功能進入插件文件夾內的主要功能頁面:
function eventAttent() {
$wpdb->show_errors();
if($_POST['attend'] == 'yes') {
$wpdb->insert('wp_event_attendants',
array('event_id' => get_the_ID(),'user_id' => $current_user->ID));
echo $wpdb->print_error();
}
}
add_action('wp_ajax_Attending', 'eventAttend');
add_action('wp_ajax_nopriv_Attending', 'eventAttend');
當用戶單擊「參加」複選框時,如何調用此函數?