用于搜索要安装的插件的Ajax处理程序。

原型

wp_ajax_search_install_plugins()

源文件

路径:wp-admin/includes/ajax-actions.php

<?php
...
function wp_ajax_search_install_plugins() {
	check_ajax_referer( 'updates' );
	$pagenow = isset( $_POST['pagenow'] ) ? sanitize_key( $_POST['pagenow'] ) : '';
	if ( 'plugin-install-network' === $pagenow || 'plugin-install' === $pagenow ) {
		set_current_screen( $pagenow );
	}
	/** @var WP_Plugin_Install_List_Table $wp_list_table */
	$wp_list_table = _get_list_table( 'WP_Plugin_Install_List_Table', array(
		'screen' => get_current_screen(),
	) );
	$status = array();
	if ( ! $wp_list_table->ajax_user_can() ) {
		$status['errorMessage'] = __( 'Sorry, you are not allowed to manage plugins for this site.' );
		wp_send_json_error( $status );
	}
	// Set the correct requester, so pagination works.
	$_SERVER['REQUEST_URI'] = add_query_arg( array_diff_key( $_POST, array(
		'_ajax_nonce' => null,
		'action'      => null,
	) ), network_admin_url( 'plugin-install.php', 'relative' ) );
	$wp_list_table->prepare_items();
	ob_start();
	$wp_list_table->display();
	$status['count'] = (int) $wp_list_table->get_pagination_arg( 'total_items' );
	$status['items'] = ob_get_clean();
	wp_send_json_success( $status );
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/wp_ajax_search_install_plugins/