W3cubDocs

/WordPress

Custom_Image_Header::ajax_header_remove()

Given an attachment ID for a header image, unsets it as a user-uploaded header image for the active theme.

Description

Triggered when the user clicks the overlay "X" button next to each image choice in the Customizer’s Header tool.

Source

public function ajax_header_remove() {
	check_ajax_referer( 'header-remove', 'nonce' );

	if ( ! current_user_can( 'edit_theme_options' ) ) {
		wp_send_json_error();
	}

	$attachment_id = absint( $_POST['attachment_id'] );
	if ( $attachment_id < 1 ) {
		wp_send_json_error();
	}

	$key = '_wp_attachment_custom_header_last_used_' . get_stylesheet();
	delete_post_meta( $attachment_id, $key );
	delete_post_meta( $attachment_id, '_wp_attachment_is_custom_header', get_stylesheet() );

	wp_send_json_success();
}

Changelog

Version Description
3.9.0 Introduced.

© 2003–2024 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/custom_image_header/ajax_header_remove