<?php
// Bij het gebruik van de alternatieve indexer moet de index behouden blijven!
function myswp_before_xml_import( $import_id ) {
    // Pauzeer de SearchWP indexer tijdens de import
    SWP()->indexer_pause();
    
    // Negeer edit events
    searchwp_update_option( 'prevent_delta_triggers', true );

    // Purge de gehele SearchWP index
    // LET OP: als deze optie aan staat dan moet de pmxi_saved_post actie onderaan uit staan; aangezien dat niet nodig is
    //SWP()->purge_index();
}

add_action( 'pmxi_before_xml_import', 'myswp_before_xml_import', 10, 1 );

/**
 * Update elke post afzonderlijk (indien gehele indexer purgen uit staat)
 */
function myswp_post_updated( $post_id ){
	SWP()->purge_post( $post_id );
}

add_action('pmxi_saved_post', 'myswp_post_updated', 10, 1 );


/**
 * Na de WP All Import SearchWP index opnieuw opbouwen
 */
function myswp_after_xml_import( $import_id ) {
    // Luister naar de triggers
    searchwp_update_option( 'prevent_delta_triggers', false );

    // Zet de indexer weer aan
    SWP()->indexer_unpause();

    // Trigger de index en bouw opnieuw op
    SWP()->trigger_index();
}

add_action( 'pmxi_after_xml_import', 'myswp_after_xml_import', 10, 1 );
Geef een reactie 0