【WordPress】wp_insert_post,wp_update_postを実行すると、iframe,scriptタグが紛失する件

ワードプレスのサニタイズという機能が干渉してます。
セキュリティの都合上、外部からの投稿があった際に守ってくれる機能なのですが
知らなくてドハマリしました。

// 保存前に一旦サニタイズをオフに
remove_filter('content_save_pre', 'wp_filter_post_kses');
remove_filter('content_filtered_save_pre', 'wp_filter_post_kses');

// 保存用のコードをここに


// セキュリティの都合上保存が終わったらすぐに戻す
add_filter('content_save_pre', 'wp_filter_post_kses');
add_filter('content_filtered_save_pre', 'wp_filter_post_kses');

参考:
https://wordpress.stackexchange.com/questions/100588/wp-cron-doesnt-save-iframe-or-object-in-post-body

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です