質問: ### 前提・実現したいこと 記事の更新後に、カスタムフィールドの値を保存した上で、投稿一覧画面へ遷移(リダイレクト)させたい。 ### 発生している問題・エラーメッセージ 下記ソースコードにて、更新ボタンを押下後、投稿一覧画面(edit.php)へ遷移するのですが、Advanced Custom Fieldsを使って追加したカスタムフィールドの値が保存されません。 ### 該当のソースコード function.phpに記載 ``` function post_updated_redirect_page(){ wp_safe_redirect(admin_url("edit.php")); exit(); } add_action('post_updated','post_updated_redirect_page'); ``` ### 試したこと `post_updated`や`wp_insert_post`などアクションをいくつか変更し試してみましたが、カスタムフィールドの値が保存されません。 ### 補足情報(FW/ツールのバージョンなど) WordPress バージョン 4.9.8 Advanced Custom Fields バージョン 4.4.12
回答: `save_post`を使うけどこういうこと? 投稿タイプも指定しておいた方が無難かも。 ``` function post_updated_redirect_page( $post_id, $post ){ if( $post->post_status !== 'auto-draft' && $post->post_type === 'post' ) { wp_safe_redirect(admin_url("edit.php")); exit(); } } add_action( 'save_post', 'post_updated_redirect_page', 10, 2 ); ```