本文整理汇总了PHP中WP_HTTP_IXR_Client::query方法的典型用法代码示例。如果您正苦于以下问题:PHP WP_HTTP_IXR_Client::query方法的具体用法?PHP WP_HTTP_IXR_Client::query怎么用?PHP WP_HTTP_IXR_Client::query使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WP_HTTP_IXR_Client
的用法示例。
在下文中一共展示了WP_HTTP_IXR_Client::query方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: wprt_screen
function wprt_screen()
{
echo '<div class="wrap"><h2>WP Remote Test</h2>';
$action = isset($_POST['action']) ? $_POST['action'] : null;
$url = isset($_POST['url']) ? $_POST['url'] : null;
$method = isset($_POST['method']) ? $_POST['method'] : null;
$useragent = isset($_POST['useragent']) ? $_POST['useragent'] : null;
if ($action == 'xmlrpc') {
echo "<h3>Results</h3>";
require_once ABSPATH . WPINC . '/class-IXR.php';
require_once ABSPATH . WPINC . '/class-wp-http-ixr-client.php';
$client = new WP_HTTP_IXR_Client($url);
$client->useragent = $useragent;
if (!$client->query($method)) {
print_r($client->error);
} else {
print_r($client->getResponse());
}
}
?>
<h3>XML/RPC (WP_HTTP_IXR_Client)</h3>
<form id="posts-filter" action="" method="POST">
<p>
<label>URL</label><br />
<input type="text" name="url" style="width: 360px;" value="http://apps.meow.fr/xmlrpc.php"><br />
</p>
<p>
<label>Method</label><br />
<input type="text" name="method" style="width: 360px;" value="meow_sales.auth"><br />
</p>
<p>
<label>User Agent</label><br />
<input type="text" name="useragent" style="width: 360px;" value="MeowApps"><br />
</p>
<input type="hidden" name="action" value="xmlrpc">
<input type="submit" class="button" value="Query">
</form>
<?php
echo '</div>';
}
示例2: weblog_ping
/**
* Send a pingback.
*
* @since 1.2.0
*
* @global string $wp_version
*
* @param string $server Host of blog to connect to.
* @param string $path Path to send the ping.
*/
function weblog_ping($server = '', $path = '')
{
global $wp_version;
include_once ABSPATH . WPINC . '/class-IXR.php';
include_once ABSPATH . WPINC . '/class-wp-http-ixr-client.php';
// using a timeout of 3 seconds should be enough to cover slow servers
$client = new WP_HTTP_IXR_Client($server, !strlen(trim($path)) || '/' == $path ? false : $path);
$client->timeout = 3;
$client->useragent .= ' -- WordPress/' . $wp_version;
// when set to true, this outputs debug messages by itself
$client->debug = false;
$home = trailingslashit(home_url());
if (!$client->query('weblogUpdates.extendedPing', get_option('blogname'), $home, get_bloginfo('rss2_url'))) {
// then try a normal ping
$client->query('weblogUpdates.ping', get_option('blogname'), $home);
}
}
示例3: wr2x_validate_pro
function wr2x_validate_pro($subscr_id)
{
if (empty($subscr_id)) {
delete_option('wr2x_pro_serial', "");
delete_option('wr2x_pro_status', "");
set_transient('wr2x_validated', false, 0);
return false;
}
require_once wr2x_get_wordpress_root() . WPINC . '/class-IXR.php';
require_once wr2x_get_wordpress_root() . WPINC . '/class-wp-http-ixr-client.php';
$client = new WP_HTTP_IXR_Client('http://apps.meow.fr/xmlrpc.php');
if (!$client->query('meow_sales.auth', $subscr_id, 'retina', get_site_url())) {
update_option('wr2x_pro_serial', "");
update_option('wr2x_pro_status', "A network error: " . $client->getErrorMessage());
set_transient('wr2x_validated', false, 0);
return false;
}
$post = $client->getResponse();
if (!$post['success']) {
if ($post['message_code'] == "NO_SUBSCRIPTION") {
$status = __("Your serial does not seem right.");
} else {
if ($post['message_code'] == "NOT_ACTIVE") {
$status = __("Your subscription is not active.");
} else {
if ($post['message_code'] == "TOO_MANY_URLS") {
$status = __("Too many URLs are linked to your subscription.");
} else {
$status = "There is a problem with your subscription.";
}
}
}
update_option('wr2x_pro_serial', "");
update_option('wr2x_pro_status', $status);
set_transient('wr2x_validated', false, 0);
return false;
}
set_transient('wr2x_validated', $subscr_id, 3600 * 24 * 100);
update_option('wr2x_pro_serial', $subscr_id);
update_option('wr2x_pro_status', __("Your subscription is enabled."));
return true;
}
示例4: _send_request
/**
* Send an XMLRPC request to the Catalyst API.
*
* @param string $request
* @param array $args
*
* @return bool|IXR_Error
*/
protected function _send_request($request, $args)
{
$client = new WP_HTTP_IXR_Client(trailingslashit(CATALYST_URL) . 'xmlrpc.php');
$response = $client->query("catalyst.{$request}", $args);
if (false === $response) {
// store error for use in implementation
$this->request_error = isset($client->error->message) ? $client->error->message : '';
return $client->error;
}
return $client->getResponse();
}
示例5: array
function infusionsoft_lists()
{
// Include WordPress libraries to handle XML-RPC
require_once ABSPATH . '/wp-includes/class-IXR.php';
require_once ABSPATH . '/wp-includes/class-wp-http-ixr-client.php';
// get options
$options = get_option('optinoid_options');
// Initialize the client
$client = new WP_HTTP_IXR_Client('https://' . $options['infusionsoft_subdomain'] . '.infusionsoft.com/api/xmlrpc');
$client->query('WebFormService.getMap', $options['infusionsoft_api']);
$response = $client->getResponse();
// empty list array
$lists = array();
if (!empty($response['faultCode'])) {
wp_send_json(array('error' => $response['faultString']));
} else {
if (!empty($response)) {
foreach ($response as $k => $v) {
$lists[$k]['id'] = $k;
$lists[$k]['name'] = $v;
}
}
wp_send_json($lists);
}
wp_die();
}
示例6: infusionsoft_subscribe
public function infusionsoft_subscribe($list_id, $email, $name = null)
{
// Include WordPress libraries to handle XML-RPC
require_once ABSPATH . '/wp-includes/class-IXR.php';
require_once ABSPATH . '/wp-includes/class-wp-http-ixr-client.php';
// get options
$options = get_option('optinoid_options');
// Initialize the client
$client = new WP_HTTP_IXR_Client('https://' . $options['infusionsoft_subdomain'] . '.infusionsoft.com/api/xmlrpc');
$first_name = null;
$last_name = null;
if (!empty($name)) {
$name_arr = explode(' ', $name);
if (!empty($name_arr[0])) {
$first_name = $name_arr[0];
}
if (!empty($name_arr[1])) {
$last_name = $name_arr[1];
}
}
$client->query('WebFormService.getHTML', $options['infusionsoft_api'], $list_id);
$dom = new DOMDocument();
$dom->loadHTML($client->getResponse());
$inputs = $dom->getelementsbytagname('input');
$data = array();
foreach ($inputs as $input) {
$name = $input->getAttribute('name');
if ($name == 'inf_field_Email') {
$data[$name] = $email;
} elseif ($name == 'inf_field_FirstName') {
$data[$name] = $first_name;
} elseif ($name == 'inf_field_LastName') {
$data[$name] = $last_name;
} else {
$data[$name] = $input->getAttribute('value');
}
}
$endpoint = 'https://' . $options['infusionsoft_subdomain'] . '.infusionsoft.com/app/form/process/' . $data['inf_form_xid'];
$response = wp_remote_post($endpoint, array('body' => $data));
}