Возможно ли расширить Wordpress XMLRPC интерфейс из плагина? - PullRequest
2 голосов
/ 01 мая 2010

Можно ли создать плагин, который при активации добавит новую "функцию" в интерфейс XMLRPC и обработает ее вызов?

1 Ответ

7 голосов
/ 02 мая 2010

Короче да. Вы можете добавить функцию в виде плагина или в файл functions.php вашей темы, который обрабатывает вызовы XMLRPC. Вам понадобятся следующие разделы:

function xml_add_method( $methods ) {
    $methods['myClient.myMethod'] = 'my_method_callback';
    return $methods;
}

add_filter( 'xmlrpc_methods', 'xml_add_method');

Эта функция добавляет ваш вызов метода во встроенный обработчик метода XMLRPC. Когда кто-то делает запрос к http://yoursite.com/xmlrpc.php с помощью этого метода, все параметры будут отправлены в функцию my_method_callback():

function my_method_callback( $args ) {
    // Do Something

    // Return Something
}

Я использую эту систему для обработки отчетов об ошибках с моими плагинами. Когда один из моих плагинов выходит из строя на веб-сайте клиента, он сообщает о сбое, публикуя данные на http://www.mywordpressinstallation.com/xmlrpc.php.. На моем сайте у меня есть плагин, который сохраняет эту информацию в базе данных, чтобы я мог просмотреть ее позже и исправлять ошибки.

...