我刚刚制作了一个需要自动保存的插件,所以我开始深入研究代码。我现在做到了,因为它必须由一些javascript触发,所以当autosave启动时,我开始查看Chrome中的控制台。然后我看到了autosave.js
查找类tags-input
在管理筛选器中。php您可以看到注释:
// NOTE: the class "tags-input" allows to include the field in the autosave $_POST (see autosave.js)
所以我只是增加了这个类
tags-input
到我的隐藏字段,它现在保存时自动保存火灾!
以下是我的示例:<input type="hidden" class="tags-input" name="key" value="value" />
Update:
现在,您必须通过自己的ajax函数添加数据。(添加一个新的js文件并包含在footer.admin\\u enqueue\\u脚本中)
jQuery(document).ajaxSend(function(e, x, a) {
var data = 1;
a.data += \'&\' + jQuery.param( {test_data: data} );
});
还有节约:
add_action(\'save_post\', \'autosave_save_custom\');
function autosave_save_custom( $post ) {
if( wp_is_post_autosave($post) && isset( $_POST[\'test_data\'] ) ) {
$test_data = intval( $_POST[\'test_data\'] );
$post_id = $post->ID;
update_metadata( $post->post_type, $post_id, \'test_data\', $test_data );
}
}