WordPress 通过admin-ajax.php传递值创建/存入文章字段
要通过WordPress的adminajax.php传递值并创建/存入文章字段,你需要进行一些操作。首先,你需要创建一个自定义的WordPress插件或将以下代码添加到你的主题的functions.php文件中。下面是一个示例:
- 创建一个自定义插件(可选):
如果你想以插件的形式添加这个功能,可以创建一个新的插件文件,例如customajaxhandler.php,然后在插件文件中添加以下代码:
<?php
/
Plugin Name: Custom Ajax Handler
Description: Handles custom AJAX requests for creating/storing post fields.
/
// Enqueue jQuery (if not already loaded)
function enqueue_jquery() {
wp_enqueue_script('jquery');
}
add_action('wp_enqueue_scripts', 'enqueue_jquery');
// Handle the AJAX request
function custom_ajax_handler() {
if (isset($_POST['post_id']) && isset($_POST['custom_field_value'])) {
$post_id = intval($_POST['post_id']);
$custom_field_value = sanitize_text_field($_POST['custom_field_value']);
// Update or create the custom field
update_post_meta($post_id, 'custom_field_name', $custom_field_value);
echo 'Success'; // You can send any response you want here
}
wp_die();
}
// Hook into WordPress AJAX actions
add_action('wp_ajax_custom_ajax', 'custom_ajax_handler');
add_action('wp_ajax_nopriv_custom_ajax', 'custom_ajax_handler');
?>
在这个插件中,我们首先确保jQuery已经被加载(如果没有的话),然后定义了一个名为custom_ajax_handler的函数来处理AJAX请求。这个函数检查传递的post_id和custom_field_value,并使用update_post_meta函数来更新或创建文章的自定义字段。
- 创建AJAX请求:
现在,你可以在你的WordPress前端页面中创建一个AJAX请求,以便将数据发送到adminajax.php。这可以通过JavaScript来实现,例如:
jQuery(document).ready(function($) {
$('#custombutton').click(function() {
var post_id = 123; // 替换为你要更新的文章的ID
var custom_field_value = 'Your custom field value'; // 替换为你要保存的自定义字段的值
$.ajax({
type: 'POST',
url: ajaxurl,
data: {
action: 'custom_ajax',
post_id: post_id,
custom_field_value: custom_field_value
},
success: function(response) {
console.log('Response: ' response);
// 在这里处理成功后的操作
}
});
});
});
在这个示例中,当用户点击具有custombutton
ID的按钮时,将执行AJAX请求。请确保替换post_id
和custom_field_value
为你实际要使用的文章ID和自定义字段值。
通过这种方式,你可以通过AJAX请求将数据发送到adminajax.php,并在服务器端使用WordPress函数来更新或创建文章字段。这个示例中的响应是简单的成功消息,你可以根据需要进行扩展。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
仍然有问题? 我们要如何帮助您?