設定:
問題:
これらのカスタム隠しフィールドを他の投稿データと一緒に自動保存機能内でどのように保存できるか
ありがとう
自動保存する必要があるプラグインを作成したところで、コードを詳しく調べ始めました。自動保存が起動したときにChromeのコンソールを調べ始めるようになったので、JavaScriptでトリガする必要があることを確認しました。私はそれからautosave.js
がadmin-filters.phpのクラスtags-input
を探すのを見ました、あなたはコメントを見ることができます:
// 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" />
更新:
今、あなたはあなた自身のajax関数によってあなたのデータを追加しなければなりません。 (新しいjsファイルを追加してフッターに含めます。admin_enqueue_scripts)
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 );
}
}