Add duplicate merging option to staff and team importer

This commit is contained in:
Brian Miyaji
2018-01-23 18:16:00 +11:00
parent 413686e4fd
commit c891703e13
3 changed files with 75 additions and 11 deletions

View File

@@ -70,12 +70,20 @@ if ( class_exists( 'WP_Importer' ) ) {
continue;
endif;
$args = array( 'post_type' => 'sp_staff', 'post_status' => 'publish', 'post_title' => wp_strip_all_tags( $name ) );
// Get or insert staff
$staff_object = sp_array_value( $_POST, 'merge', 0 ) ? get_page_by_title( stripslashes( $name ), OBJECT, 'sp_staff' ) : false;
if ( $staff_object ):
if ( $staff_object->post_status != 'publish' ):
wp_update_post( array( 'ID' => $staff_object->ID, 'post_status' => 'publish' ) );
endif;
$id = $staff_object->ID;
else:
$args = array( 'post_type' => 'sp_staff', 'post_status' => 'publish', 'post_title' => wp_strip_all_tags( $name ) );
$id = wp_insert_post( $args );
$id = wp_insert_post( $args );
// Flag as import
update_post_meta( $id, '_sp_import', 1 );
// Flag as import
update_post_meta( $id, '_sp_import', 1 );
endif;
// Update roles
$roles = explode( '|', sp_array_value( $meta, 'sp_role' ) );
@@ -168,5 +176,29 @@ if ( class_exists( 'WP_Importer' ) ) {
wp_import_upload_form( 'admin.php?import=sp_staff_csv&step=1' );
echo '</div>';
}
/**
* options function.
*
* @access public
* @return void
*/
function options() {
?>
<table class="form-table">
<tbody>
<tr>
<td>
<label>
<input type="hidden" name="merge" value="0">
<input type="checkbox" name="merge" value="1" checked="checked">
<?php _e( 'Merge duplicates', 'sportspress' ); ?>
</label>
</td>
</tr>
</tbody>
</table>
<?php
}
}
}