WP All Import

Importing posts

By default, WP All Import plugin will trigger the actions twice for each post imported.

// Add our proxy action to the trigger.
add_action('notification/trigger/registered', function($trigger) {
    if (preg_match('/post\/(.*)\/added/', $trigger->getSlug())) {
        $trigger->addAction( 'notification_pmxi_added_post', 10, 3 );
    }

    if (preg_match( '/post\/(.*)\/updated/', $trigger->getSlug())) {
        $trigger->addAction( 'notification_pmxi_updated_post', 10, 3 );
    }
} );

// Proxy action.
add_action( 'pmxi_saved_post', function( $post_id, $node, $is_update ) {
    if ( ! $is_update ) {
        do_action( 'notification_pmxi_added_post', $post_id, get_post( $post_id ), false );
    } else {
        do_action( 'notification_pmxi_updated_post', $post_id, get_post( $post_id ), get_post( $post_id ) );
    }
}, 10, 3 );

// Disable postponing.
add_filter( 'notification/integration/gutenberg', function( $initial ) {
    if ( defined( 'WP_IMPORTING' ) && WP_IMPORTING ) {
        return false;
    }
    return $initial;
} );

add_filter( 'notification/integration/custom_fields/should_postpone_save_post', function( $initial ) {
    if ( defined( 'WP_IMPORTING' ) && WP_IMPORTING ) {
        return false;
    }
    return $initial;
} );

Last updated