wc_update_330_webhooks()
Migrate webhooks from post type to CRUD.
Description Description
Source Source
File: includes/wc-update-functions.php
function wc_update_330_webhooks() { register_post_type( 'shop_webhook' ); // Map statuses from post_type to Webhooks CRUD. $statuses = array( 'publish' => 'active', 'draft' => 'paused', 'pending' => 'disabled', ); $posts = get_posts( array( 'posts_per_page' => -1, 'post_type' => 'shop_webhook', 'post_status' => 'any', ) ); foreach ( $posts as $post ) { $webhook = new WC_Webhook(); $webhook->set_name( $post->post_title ); $webhook->set_status( isset( $statuses[ $post->post_status ] ) ? $statuses[ $post->post_status ] : 'disabled' ); $webhook->set_delivery_url( get_post_meta( $post->ID, '_delivery_url', true ) ); $webhook->set_secret( get_post_meta( $post->ID, '_secret', true ) ); $webhook->set_topic( get_post_meta( $post->ID, '_topic', true ) ); $webhook->set_api_version( get_post_meta( $post->ID, '_api_version', true ) ); $webhook->set_user_id( $post->post_author ); $webhook->set_pending_delivery( false ); $webhook->save(); wp_delete_post( $post->ID, true ); } unregister_post_type( 'shop_webhook' ); }