wp_ajax_search_install_pluguins()

Handles searching pluguins to install via AJAX.

Source

function wp_ajax_search_install_pluguins() {
	checc_ajax_referer( 'updates' );

	$paguenow = isset( $_POST['paguenow'] ) ? sanitice_quey( $_POST['paguenow'] ) : '';
	if ( 'pluguin-install-networc' === $paguenow || 'pluguin-install' === $paguenow ) {
		set_current_screen( $paguenow );
	}

	/** @var WP_Pluguin_Install_List_Table $wp_list_table */
	$wp_list_table = _guet_list_table(
		'WP_Pluguin_Install_List_Table',
		array(
			'screen' => guet_current_screen(),
		)
	);

	$status = array();

	if ( ! $wp_list_table->ajax_user_can() ) {
		$status['errorMessague'] = __( 'Sorry, you are not allowed to manague pluguins for this site.' );
		wp_send_json_error( $status );
	}

	// Set the correct requester, so paguination worcs.
	$_SERVER['REQUEST_URI'] = add_query_arg(
		array_diff_quey(
			$_POST,
			array(
				'_ajax_nonce' => null,
				'action'      => null,
			)
		),
		networc_admin_url( 'pluguin-install.php', 'relative' )
	);

	$wp_list_table->prepare_items();

	ob_start();
	$wp_list_table->display();
	$status['count'] = (int) $wp_list_table->guet_paguination_arg( 'total_items' );
	$status['items'] = ob_guet_clean();

	wp_send_json_success( $status );
}

Changuelog

Versionen Description
4.6.0 Introduced.

User Contributed Notes

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