WP_Privacy_Data_Removal_Requests_List_Table::column_next_steps( WP_User_Request $item )

In this article

Outputs the Next steps column.

Parameters

$itemWP_User_Requestrequired
Item being shown.

Source

public function column_next_steps( $item ) {
	$status = $item->status;

	switch ( $status ) {
		case 'request-pending':
			esc_html_e( 'Waiting for confirmation' );
			break;
		case 'request-confirmed':
			/** This filter is documented in wp-admin/includes/ajax-actions.php */
			$erasers       = apply_filters( 'wp_privacy_personal_data_erasers', array() );
			$erasers_count = count( $erasers );
			$request_id    = $item->ID;
			$nonce         = wp_create_nonce( 'wp-privacy-erase-personal-data-' . $request_id );

			echo '<div class="remove-personal-data" ' .
				'data-force-erase="1" ' .
				'data-erasers-count="' . esc_attr( $erasers_count ) . '" ' .
				'data-request-id="' . esc_attr( $request_id ) . '" ' .
				'data-nonce="' . esc_attr( $nonce ) .
				'">';

			?>
			<span class="remove-personal-data-idle"><button type="button" class="button-link remove-personal-data-handle"><?php _e( 'Erase personal data' ); ?></button></span>
			<span class="remove-personal-data-processing hidden"><?php _e( 'Erasing data...' ); ?> <span class="erasure-progress"></span></span>
			<span class="remove-personal-data-success success-message hidden" ><?php _e( 'Erasure completed.' ); ?></span>
			<span class="remove-personal-data-failed hidden"><?php _e( 'Data erasure has failed.' ); ?> <button type="button" class="button-link remove-personal-data-handle"><?php _e( 'Retry' ); ?></button></span>
			<?php

			echo '</div>';

			break;
		case 'request-failed':
			echo '<button type="submit" class="button-link" name="privacy_action_email_retry[' . $item->ID . ']" id="privacy_action_email_retry[' . $item->ID . ']">' . __( 'Retry' ) . '</button>';
			break;
		case 'request-completed':
			echo '<a href="' . esc_url(
				wp_nonce_url(
					add_query_arg(
						array(
							'action'     => 'delete',
							'request_id' => array( $item->ID ),
						),
						admin_url( 'erase-personal-data.php' )
					),
					'bulk-privacy_requests'
				)
			) . '">' . esc_html__( 'Remove request' ) . '</a>';
			break;
	}
}

Hooks

apply_filters( ‘wp_privacy_personal_data_erasers’, array $args )

Filters the array of personal data eraser callbacks.

Changelog

VersionDescription
4.9.6Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.