LogoLogo
WordPress.orgExtensionsSupport
Version 6
Version 6
  • Notification – Custom Notifications and Alerts for WordPress
  • Known issues
  • User guide
    • How Notification plugin works
    • Who can use this plugin
    • How to create Notifications
    • Custom Post Type support
    • How to escape { character
    • Background processing
    • Troubleshooting
    • How to setup different FROM address for different Notifications
  • Developer
    • General
      • Plugin loading chain
      • Extension possibilities
      • Creating an extension
      • Bundling Notification plugin
      • White label mode
    • Notifications
      • Suppressing the Notification
      • JSON synchronization
      • Programmatic Notifications
    • Triggers
      • List of all default Triggers
      • Custom Trigger
      • Enable support for non-public Custom Post Type
      • Adding Merge Tags to existing Triggers
      • Postponing the Trigger action
      • Delaying Trigger execution with Cron
    • Carriers
      • Suppressing the Carrier
    • Snippets
      • General
        • Automatic Trigger testing
        • Allow other roles to edit Notifications
      • Triggers
        • Post
        • User
      • Integations
        • WP All Import
        • MemberPress
        • Gutenberg
  • Extensions
    • Installation
    • Planned extensions
    • 3rd Party Extensions
    • Custom Fields
    • Scheduled Triggers
Powered by GitBook
On this page

Was this helpful?

  1. Developer
  2. Snippets
  3. Integations

WP All Import

Importing posts

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

This guide assumes that you have the option "Increase speed by disabling do_action calls in wp_insert_post during import." checked, in the Import settings in Advanced Options tab.

You must use Post added trigger for this integration (or other Custom Post Type added trigger) or Post updated trigger.

// Add our proxy action to the trigger.
add_action( 'notification/trigger/registered', function( $trigger ) {

	if ( preg_match( '/wordpress\/(?!.*(plugin|theme)).*\/added/', $trigger->get_slug() ) ) {
		$trigger->add_action( 'notification_pmxi_added_post', 10, 3 );
	}

	if ( preg_match( '/wordpress\/(?!.*(plugin|theme)).*\/updated/', $trigger->get_slug() ) ) {
		$trigger->add_action( '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;
} );
PreviousIntegationsNextMemberPress

Last updated 5 years ago

Was this helpful?