ཞིབ་བརྗོད།
A wordpress plugin that implements an API framework for you to control and manage one or many WordPress sites from a central location. The intention is to offer the ability to create your own web interface to interact with all of your WordPress sites, allowing you to update core, update plugins, install plugins, deactivate plugins and many more actions. A web interface is the intended centralized platform however management systems like Ansible, Salt and Puppet can be used to interact with your WordPress sites.
This plugin opens up your entire wordpress site to be accessed as an external API service. The idea behind this plugin is for you to access multiple wordpress sites to manage and execute actions such as updating plugins and WordPress core as an API service. Anyone that has the API key will be able to execute these actions on your WordPress site.
A python script is available in the bin folder of this plugin to provide a simple example of how one could interact with this plugin in order to perform actions such as updating plugins or WP Core remotely with API calls, authenticated with the generated KEY of course.
Future versions of this plugins may interact with a web service hosted and managed by Shift8, however currently anyone can interact with this plugin using the example python script as a starting point.
API Action Commands
Find an overview of the API commands that can be executed through this plugin. You can execute these commands by creating your own web application to interface with this plugin, or create a quick python script (like the example script provided here in the bin folder).
get_plugin_version
This will provide the current version of the plugin
get_filesystem_method
This will provide the currently defined filesystem method used for modifying files in the WordPress installation
get_supported_filesystem_methods
This will provide a list of supported filesystem methods currently available for the WordPress installation
get_wp_version
This will return the currently running WordPress version
get_constants
This will return any defined constants
upgrade_core
This will initiate a WordPress core upgrade to the latest stable version
get_plugins
This will return a list of currently installed WordPress plugins
update_plugin / upgrade_plugin
This will initiate a plugin update with the plugin to update specified as an additional argument
validate_plugin / install_plugin / activate_plugin / deactivate_plugin / uninstall_plugin
This will validate / install / activate / deactivate or uninstall a plugin with the additional argument specified being the specific plugin to act on.
get_themes
This will retun the currently installed themes
install_theme / activate_theme / update_theme / upgrade_theme / delete_theme
This will install / activate / update / upgrade or delete a specific theme with the additional argument given specifying which theme.
get_site_info
This will return the site url, home url, admin url, currently detected web host and site summary.
get_option
This will return the value of a specific administrative option with the additional argument given specifying which option value to return
update_option / delete_option
This will update or delete a specific value for an administrative option with the additional argument given specifying which option value to update
Want to see the plugin in action?
You can view three example sites where this plugin is live :
- Example Site 1 : WordPress Hosting
- Example Site 2 : Web Design in Toronto
Features
- Settings area to allow you to define the API key that authenticates and passes commands to the api
- Ability to list all plugins
- Ability to set wordpress options
- Ability to update all plugins
- Ability to update wordpress core
- Ability to install/deinstall/activate/deactivate plugins
གཏུབ་རེིས།
སྒྲིག་འཇུག
This section describes how to install the plugin and get it working.
e.g.
- Upload the plugin files to the
/wp-content/plugins/shift8-remote
directory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the ‘Plugins’ screen in WordPress
- Navigate to the plugin settings page and define your settings
FAQ
- I tested it on myself and its not working for me!
-
You should monitor the request log to see if it is able to hit the site. Also monitor the server logs of your WordPress site to identify if any problems (i.e. curl) are happening.
- What can I use to interact with this plugin to control my WordPress site?
-
Literally any programming language that is capable of making web requests. In the “bin” folder of this plugin is an example Python script that can be used to submit queries via the plugin. Future iterations of this plugin may include additional examples for PHP, Ruby and Javascript frameworks.
- Do you provide a service to interact with this plugin that I can sign up for?
-
Currently, not at this time. This is currently being developed and will be announced via a plugin update. The idea is to give the power to the end user to connect and manage themselves.
- There are errors and I cannot connect!
-
Double check that your web host supports the latest version of PHP. Ideally you SHOULD be on PHP v7+. If you are lower than PHP 5.2 the plugin will deactivate itself.
གདེང་འཇོག
There are no reviews for this plugin.
བྱས་རྗེས་འཇོག་མཁན། & གསར་འབྱེད་པ།
“Shift8 Remote Management” is open source software. The following people have contributed to this plugin.
བྱས་རྗེས་འཇོག་མཁན།ཁྱེད་ཀྱི་སྐད་ཡིག་ནང་ལ་ “Shift8 Remote Management” ཡིག་སྒྱུར་བྱོས།
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
དག་བཅོས་ཉིན་ཐོ།
1.00
- Stable version created
1.01
- Added new element for plugin file to be included in json array returned from plugin queries in order to properly update
1.02
- Added API function to return is_active boolean for better error checking
1.03
- WordPress 5 compatibility