這個外掛並未在最新的 3 個 WordPress 主要版本上進行測試。開發者可能不再對這個外掛進行維護或提供技術支援,並可能會與更新版本的 WordPress 產生使用上的相容性問題。

Gallery Plugin XMLRPC Interface

外掛說明

Basically this plugin creates XMLRPC interfaces for Gallery Plugin.
Thanks for the author of Extended API, Michael Grosser, since this plugin has reused the design.
NOTE: API functions (xmlrpc revoke functions) are all prefixed with ‘i_gllrxmlrpc’.

安裝方式

  1. Gallery plugin has to be installed as the pre-requisite condition. You can find Gallery Plugin here, https://wordpress.org/extend/plugins/gallery-plugin/
  2. unzip the plugin
  3. Upload plugin folder to the /wp-content/plugins/ directory
  4. Activate the plugin through the ‘Plugins’ menu in WordPress
  5. In administrator portal, click Settings->Gallery Plugin XMLRPC Interface to enable/disable the api functions.

Warning: Debug Error log is being appended into the WP_CONTENT_DIR . ‘/debug.log’; Make sure that in production environment, trun off the debug directive in wp-includes/default-constants.php

常見問題集

Exmaple to invoke the xmlrpc api in PHP

//this example demo how to invoke the api to delete a image in the album
set_time_limit(0);
require_once(“IXR_Library.php.inc”);

$client->debug = true; // Set it to false in Production Environment

// Create the client object
$client = new IXR_Client(‘{zonename}’,’/xmlrpc.php?delete_images[]={imageID}’);

$username = “{admin login name}”;
$password = “{password}”;

$function_args = array(array(”,$username,$password,'{postID}’, array()));
$params = array($username,$password,”i_gllrxmlrpc_editpost”, $function_args);

// Run a query To Read Posts From WordPress
$ret = $client->query(‘gllrxmlrpc_extapi.callGllrMethod’, $params);
if (!$ret) {
die(‘Something went wrong – ‘.$client->getErrorCode().’ : ‘.$client->getErrorMessage());
}

$myresponse = $client->getResponse();
print_r($myresponse);

Exmaple to invoke the xmlrpc api in java

client = new XMLRPCClient(WordPress.currentBlog.getUrl(),
WordPress.currentBlog.getHttpuser(),
WordPress.currentBlog.getHttppassword());

Object[] result = null;
//
Map<String, String> gallery_type = new HashMap<String, String>();
gallery_type.put(“post_type”, “gallery”);
//String[] return_fields = {“post_title”, “post_type”};

Object[] fArgs = {“”, WordPress.currentBlog.getUsername(),WordPress.currentBlog.getPassword(),gallery_type};
Object[] funcArgs = {fArgs};
//
Object[] params = {
WordPress.currentBlog.getUsername(),
WordPress.currentBlog.getPassword(),
“i_gllrxmlrpc_metaweblog_getposts”,
funcArgs };
try {
result = (Object[]) client.call(“gllrxmlrpc_extapi.callGllrMethod”, params);
} catch (XMLRPCException e) {
errorMsg = e.getMessage();
}

Exmaple to invoke the delete post api in php
debug = true; // Set it to fase in Production Environment

// Create the client object
$client = new IXR_Client(‘hushanqi.localhost’,’/xmlrpc.php?XDEBUG_SESSION_START=ECLIPSE_DBGP&KEY=13505726480152′);

$username = “{user name}”;
$password = “{password}”;

$function_args = array(array(”,$username,$password,’99’));

$params = array($username,$password,”i_gllrxmlrpc_deletepost”, $function_args);

// Run a query To Read Posts From WordPress
if (!$client->query(‘gllrxmlrpc_extapi.callGllrMethod’, $params)) {
die(‘Something went wrong – ‘.$client->getErrorCode().’ : ‘.$client->getErrorMessage());
}

$myresponse = $client->getResponse();
print_r($myresponse);
die();
?>

使用者評論

這個外掛目前沒有任何使用者評論。

參與者及開發者

以下人員參與了開源軟體〈Gallery Plugin XMLRPC Interface〉的開發相關工作。

參與者

變更記錄

0.3

  • add new interface i_gllrxmlrpc_metaweblog_getPost
  • new php example of delete post

0.2

  • add new interface i_gllrxmlrpc_metaweblog_getposts to be compliant with metaweblog standard for getposts api.
  • bug fix in i_gllrxmlrpc_newpost
  • new example in Java code

0.1

  • initial version