The WordPress XML-RPC (Ticket) Hit List

After half a year of complaining about the state of XML-RPC in WordPress, I’ve tried to get the stars aligned for some significant improvements in the next release (3.4). The 3.4 development cycle has just begun after the release of 3.3 last week, and I am currently on winter break until spring semester classes start on January 9. Some of the core developers have shown interest in seeing XML-RPC improved, so I hope to make their job easier by doing the legwork on patches.

As of today (12/22/2011), there are 72 open tickets in the WordPress core Trac XML-RPC component. While I’d love to see them all fixed, there is limited amount of time and so we must prioritize. This post represents my current priorities and plans.

GSoC Project

The first area of focus will be refining the work from the WordPress Web Services 2011 Google Summer of Code project, which resulted in the wp-webservices plugin. These new methods expand the wp.* method namespace and deprecate the usage of metaWeblog/MT/Blogger API methods for common tasks.

I’ll first release a new plugin based on wp-webservices but with updated implementations. The goal is to allow people to test the new methods on 3.3 or earlier, and to make it easier than applying two dozen patches against trunk. I’ll also have a new branch of python-wordpress-xmlrpc that can talk to the new methods.

Ticket # Type Method Priority
18433 Posts wp.getPosts 0
18432 wp.getPost 2
18430 wp.editPost 2
18431 wp.deletePost 3
18437 wp.getPostTypes 3
18436 wp.getPostType 3
18444 Taxonomies wp.getTaxonomies 1
18443 wp.getTaxonomy 2
18442 wp.getTerms 1
18441 wp.getTerm 2
18438 wp.newTerm 1
18439 wp.editTerm 2
18440 wp.deleteTerm 4
18434 wp.getPostTerms 1
18435 wp.setPostTerms 1
18428 Users wp.getUsers 1
18427 wp.getUser 2
18424 wp.newUser 1
18425 wp.editUser 1
18426 wp.deleteUser 3

(Note: priorities are my opinion, not necessarily that of WordPress core team)

Bugfixes

The remainder of the tickets are a mix of feature requests and bugs. Many already have patches, though they may need to be updated to apply against trunk. An example of some easy fixes that would make the lives of the mobile app developers (and other XML-RPC users) so much better:

Ticket # Description Status
18566 Expose discussion settings on XML-RPC has-patch
18126 Expose image options on XML-RPC has-patch
17981 wp.getComments should work for non-admins has-patch
18683 wp.getMediaLibrary doesn’t return attachment ids has-patch
17109 Add more hooks for pluggability has-patch
13917 wp.uploadFile cannot be attached to a post has-patch
17132 Expose template/active_plugins on XML-RPC has-patch
10933 Expose custom more text on XML-RPC has-patch
19027 Return modification date on mw.getPost/mw.getRecentPosts has-patch

Of the 51 open non-GSoC XML-RPC tickets, 34 currently have patches.

Next Steps

My first task is to get a release of the improved wp-webservices plugin out the door. I started work on it this summer when the GSoC project was winding down, and I’ll spend the next few days doing some more refining. My goal is to have code available by Tuesday, and updated patches on all the GSoC tickets by Wednesday.

Starting this weekend I’ll also start idling in #wordpress-dev again, where I’ll be pestering nacin, westi and josephscott about triaging the old tickets and getting some of the low-hanging fruit committed.

10 Responses to The WordPress XML-RPC (Ticket) Hit List

Leave a Reply