From 1f2695ed1f633d4971c47bcf29f0df5553ae6256 Mon Sep 17 00:00:00 2001 From: Timothy Jacobs Date: Sat, 9 Jan 2021 20:20:44 +0000 Subject: [PATCH] REST API: Fix fatal error on multisite when calling the single item plugin routes. The `is_network_only_plugin` and `is_plugin_active` functions are not available in a front-end context and must be specifically loaded. Props oakesjosh. Fixes #52205. git-svn-id: https://develop.svn.wordpress.org/trunk@49952 602fd350-edb4-49c9-b593-d223f7449a82 --- .../rest-api/endpoints/class-wp-rest-plugins-controller.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/wp-includes/rest-api/endpoints/class-wp-rest-plugins-controller.php b/src/wp-includes/rest-api/endpoints/class-wp-rest-plugins-controller.php index 4eca50b549..c4155ad63d 100644 --- a/src/wp-includes/rest-api/endpoints/class-wp-rest-plugins-controller.php +++ b/src/wp-includes/rest-api/endpoints/class-wp-rest-plugins-controller.php @@ -209,6 +209,8 @@ class WP_REST_Plugins_Controller extends WP_REST_Controller { * @return true|WP_Error True if can read, a WP_Error instance otherwise. */ protected function check_read_permission( $plugin ) { + require_once ABSPATH . 'wp-admin/includes/plugin.php'; + if ( ! $this->is_plugin_installed( $plugin ) ) { return new WP_Error( 'rest_plugin_not_found', __( 'Plugin not found.' ), array( 'status' => 404 ) ); }