wp/wp-admin/includes/plugin-install.php
changeset 22 8c2e4d02f4ef
parent 21 48c4eec2b7e6
--- a/wp/wp-admin/includes/plugin-install.php	Fri Sep 05 18:40:08 2025 +0200
+++ b/wp/wp-admin/includes/plugin-install.php	Fri Sep 05 18:52:52 2025 +0200
@@ -20,34 +20,33 @@
  *
  * The second filter, {@see 'plugins_api'}, allows a plugin to override the WordPress.org
  * Plugin Installation API entirely. If `$action` is 'query_plugins' or 'plugin_information',
- * an object MUST be passed. If `$action` is 'hot_tags' or 'hot_categories', an array MUST
- * be passed.
+ * an object MUST be passed. If `$action` is 'hot_tags', an array MUST be passed.
  *
  * Finally, the third filter, {@see 'plugins_api_result'}, makes it possible to filter the
  * response object or array, depending on the `$action` type.
  *
  * Supported arguments per action:
  *
- * | Argument Name        | query_plugins | plugin_information | hot_tags | hot_categories |
- * | -------------------- | :-----------: | :----------------: | :------: | :------------: |
- * | `$slug`              | No            |  Yes               | No       | No             |
- * | `$per_page`          | Yes           |  No                | No       | No             |
- * | `$page`              | Yes           |  No                | No       | No             |
- * | `$number`            | No            |  No                | Yes      | Yes            |
- * | `$search`            | Yes           |  No                | No       | No             |
- * | `$tag`               | Yes           |  No                | No       | No             |
- * | `$author`            | Yes           |  No                | No       | No             |
- * | `$user`              | Yes           |  No                | No       | No             |
- * | `$browse`            | Yes           |  No                | No       | No             |
- * | `$locale`            | Yes           |  Yes               | No       | No             |
- * | `$installed_plugins` | Yes           |  No                | No       | No             |
- * | `$is_ssl`            | Yes           |  Yes               | No       | No             |
- * | `$fields`            | Yes           |  Yes               | No       | No             |
+ * | Argument Name        | query_plugins | plugin_information | hot_tags |
+ * | -------------------- | :-----------: | :----------------: | :------: |
+ * | `$slug`              | No            |  Yes               | No       |
+ * | `$per_page`          | Yes           |  No                | No       |
+ * | `$page`              | Yes           |  No                | No       |
+ * | `$number`            | No            |  No                | Yes      |
+ * | `$search`            | Yes           |  No                | No       |
+ * | `$tag`               | Yes           |  No                | No       |
+ * | `$author`            | Yes           |  No                | No       |
+ * | `$user`              | Yes           |  No                | No       |
+ * | `$browse`            | Yes           |  No                | No       |
+ * | `$locale`            | Yes           |  Yes               | No       |
+ * | `$installed_plugins` | Yes           |  No                | No       |
+ * | `$is_ssl`            | Yes           |  Yes               | No       |
+ * | `$fields`            | Yes           |  Yes               | No       |
  *
  * @since 2.7.0
  *
  * @param string       $action API action to perform: 'query_plugins', 'plugin_information',
- *                             'hot_tags' or 'hot_categories'.
+ *                             or 'hot_tags'.
  * @param array|object $args   {
  *     Optional. Array or object of arguments to serialize for the Plugin Info API.
  *
@@ -91,7 +90,6 @@
  *         @type bool $banners           Whether to return the banner images links. Default false.
  *         @type bool $icons             Whether to return the icon links. Default false.
  *         @type bool $active_installs   Whether to return the number of active installations. Default false.
- *         @type bool $group             Whether to return the assigned group. Default false.
  *         @type bool $contributors      Whether to return the list of contributors. Default false.
  *     }
  * }
@@ -100,9 +98,6 @@
  *         for more information on the make-up of possible return values depending on the value of `$action`.
  */
 function plugins_api( $action, $args = array() ) {
-	// Include an unmodified $wp_version.
-	require ABSPATH . WPINC . '/version.php';
-
 	if ( is_array( $args ) ) {
 		$args = (object) $args;
 	}
@@ -118,7 +113,7 @@
 	}
 
 	if ( ! isset( $args->wp_version ) ) {
-		$args->wp_version = substr( $wp_version, 0, 3 ); // x.y
+		$args->wp_version = substr( wp_get_wp_version(), 0, 3 ); // x.y
 	}
 
 	/**
@@ -139,7 +134,7 @@
 	 * Returning a non-false value will effectively short-circuit the WordPress.org API request.
 	 *
 	 * If `$action` is 'query_plugins' or 'plugin_information', an object MUST be passed.
-	 * If `$action` is 'hot_tags' or 'hot_categories', an array should be passed.
+	 * If `$action` is 'hot_tags', an array should be passed.
 	 *
 	 * @since 2.7.0
 	 *
@@ -168,7 +163,7 @@
 
 		$http_args = array(
 			'timeout'    => 15,
-			'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url( '/' ),
+			'user-agent' => 'WordPress/' . wp_get_wp_version() . '; ' . home_url( '/' ),
 		);
 		$request   = wp_remote_get( $url, $http_args );