webdevstudios / wds-wp-rest-api-connect-ui
Provides UI for connecting from one WordPress installation to another via the WordPress REST AP over OAuth1. This plugin is a UI wrapper for WDS WP REST API Connect.
Installs: 10
Dependents: 0
Suggesters: 0
Security: 0
Stars: 20
Watchers: 8
Forks: 7
Open Issues: 1
Type:wordpress-plugin
Requires
- php: >5.3
- webdevstudios/cmb2: dev-master
- webdevstudios/wds-wp-rest-api-connect: ^v0.2.5
This package is not auto-updated.
Last update: 2024-12-21 20:24:58 UTC
README
Contributors: WebDevStudios
Donate link: http://webdevstudios.com
Tags:
Requires at least: 4.4.2
Tested up to: 4.4.2
Stable tag: 0.2.5
License: GPLv2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Description
Provides UI for connecting from one WordPress installation to another via the WordPress REST API over OAuth1. This plugin is a UI wrapper for WDS WP REST API Connect.
Caveats:
- To use this plugin, you will need to run
composer install
from the root of the plugin to pull in the required dependencies, or download this zip. - Both the WP REST API plugin and the OAuth plugin are required to be on the server you are connecting to.
- You'll need to create a 'Client Application' on the server. You'll be given instructions from this plugin's settings page after you save the server URL.
Usage:
Once you've created a successful API connection via the Settings screen, you can use the the plugin's API helper function/filter. If the connection is successful, The helper function and filter both return a WDS_WP_REST_API\OAuth1\Connect
object (example usage here), which you can use to make your API requests.
The filter is an alternative to the helper function provided so that you can use in other plugins or themes without having to check if function_exists
. To do that, simply use $api = apply_filters( 'wds_rest_connect_ui_api_object', false );
. If the wds_rest_connect_ui_api_object
function isn't available, you're original value, false
will be returned. Whether using the function or the filter, you'll want to check if the $api
object returned is a WP_Error
object (is_wp_error
) or a WDS_WP_REST_API_Connect
object (is_a( $api, 'WDS_WP_REST_API\OAuth1\Connect' )
) before proceeding with making requests.
// Get API object $api = apply_filters( 'wds_rest_connect_ui_api_object', false ); // If WP_Error, find out what happened. if ( is_wp_error( $api ) ) { echo '<xmp>'. print_r( $api->get_error_message(), true ) .'</xmp>'; } // If a WDS_WP_REST_API\OAuth1\Connect object is returned, you're good to go. if ( is_a( $api, 'WDS_WP_REST_API\OAuth1\Connect' ) ) { $schema = $api->get_api_description(); // Let's take a look at the API schema echo '<xmp>$schema: '. print_r( $schema, true ) .'</xmp>'; }
Installation
Manual Installation
- Upload the entire
/wds-rest-connect-ui
directory to the/wp-content/plugins/
directory. - Run
composer install
inside the/wp-content/plugins/wds-rest-connect-ui
directory. - Activate WDS WP REST API Connect UI through the 'Plugins' menu in WordPress.
- Update the connection settings.
To avoid step 2, download this zip, unzip the file and follow steps 1, 3, and 4.
Frequently Asked Questions
Screenshots (a bit out of date since 0.2.0)
Changelog
0.2.5
- Update the wds-wp-rest-api-connect dependency to fix a typo from a variable which should be using an object property (for legacy mode).
0.2.4
- Update the wds-wp-rest-api-connect dependency to fix some bugs and in the
auth_request
method.
0.2.3
- Fix some authentication step logic, and ensure discovery is not called too often.
- Update the wds-wp-rest-api-connect dependency to fix some bugs and add filters to request args.
0.2.2
- The Optional Headers fields are now available for all steps, to ensure proper headers are sent during discovery.
- Update the wds-wp-rest-api-connect dependency, so that we use our own API Discovery library to use the WP http API, and to correctly pass any headers if they exist.
0.2.1
- Update composer files to point to correct packagist repo for WDS WP REST API Connect.
0.2.0
- Update to fix some security issues and work with the new version of the OAuth plugin.
0.1.0
- First release