Нужен совет Wordpress XMLRPC - PullRequest
5 голосов
/ 14 мая 2010

Мне было поручено создать API для извлечения и добавления контента в Wordpress из флеш-приложения и устаревшей CMS (не-PHP). Я планирую использовать существующую конечную точку xmlrpc по умолчанию и добавить любую дополнительную функциональность, создав плагин, который подключается к xmlrpc_methods.

Предыдущая попытка была предпринята другим разработчиком на основе следующего кода:

http://blog.5ubliminal.com/posts/remote-control-wordpress-blog-xmlrpc-api/

Этот код кажется мне громоздким и плохо документированным, и я бы предпочел использовать этот подход:

http://kovshenin.com/archives/custom-xml-rpc-methods-in-wordpress/

Буду признателен, если кто-нибудь, имеющий опыт в этой области, сможет подтвердить, что:

  • Я смогу различать отдельные блоги в установке MU при извлечении и публикации данных через XMLRPC
  • Я смогу получить и опубликовать в пользовательских полях
  • Написание плагина - это путь.

У нас нет возможности использовать Wordpress 3, поскольку он все еще находится в бета-версии, и мы испытываем нехватку времени.

Я был бы очень признателен за любой вклад / совет.

Большое спасибо,

Ответы [ 2 ]

2 голосов
/ 21 сентября 2010

Wordpress XMLRPC предлагает различные функции, которые могут быть легко собраны. Я использовал IXR_Library для анализа запросов / ответов XML. В настоящее время с очень маленьким кусочком кода я могу легко публиковать, извлекать, редактировать и удалять сообщения в блогах на базе Wordpress либо самостоятельно, либо на сайтах wordpress.com.

http://www.hurricanesoftwares.com/wordpress-xmlrpc-posting-content-from-outside-wordpress-admin-panel/ (ссылка)

  • Если у вас есть несколько блогов, размещенных через MU, вам потребуется идентификатор сайта всех тех блогов, который станет первым параметром для $ params (в нашем случае 0 следует заменить на site_id).
  • В приведенной выше ссылке вы увидите возможность извлекать и публиковать все созданные настраиваемые поля (к сожалению, вы не можете создавать настраиваемые поля на лету из моего скрипта)
  • Вы можете написать плагин WP, чтобы сделать все это, будьте моим гостем и дайте мне знать, если вам нужна моя помощь. Я использовал ту же технику для публикации в блоггерах, Tumblr, Wordpress и Posterous, используя их API. Надеюсь, это поможет.
2 голосов
/ 14 мая 2010

Ранее я работал с системой WordRress XMLRPC (используя установку WP-Hive с несколькими отдельными блогами, похожими на настройку WPMU). Новый подход, который вы используете, определенно проще и проще в реализации (я впервые попробовал и 5ubliminal).

То, сможете ли вы различать отдельные блоги в установке MU, полностью зависит от того, как вы создадите свою функцию обработчика. Вы можете создать его, чтобы различать отдельные блоги, работать только в определенных блогах или рассматривать всю систему как один сайт WordPress. Это все зависит от вас.

Под «функцией-обработчиком» я подразумеваю пользовательскую функцию, которую вы определяете для обработки запросов XMLRPC, которые вызывают определенный, настраиваемый метод (не обязательно метод WordPress по умолчанию). Например, я использую XMLRPC во всех моих плагинах, чтобы сообщать о ходе установки и ошибках - каждый плагин выполняет XMLRPC-вызов пользовательского обработчика (метода) на моем сервере.

Да, вы можете получать и публиковать в пользовательских полях.

Абсолютно написание плагина - путь. Единственными другими вариантами являются изменение основных файлов (идея BAD) или встраивание их в вашу тему, и в этом случае он может использоваться ТОЛЬКО на сайтах MU, использующих эту тему. Создайте его как подключаемый модуль MU для всего сайта, которым может управлять глобальный администратор для каждого сайта.

...