[wp-hackers] Post by Email proposal (OPW / GSoC)

Kathryn Hagan kat at codebykat.com
Wed May 1 06:33:39 UTC 2013

Hi, folks!  I just subscribed to the list.

I'm applying to contribute to WordPress as part of GNOME's Outreach Program
for Women.  A bit about my skillset... I'm a freelance web developer and
have done many custom WP sites for clients, including plugins, themes, and
taxonomies, so I'm reasonably familiar with the codebase.  I also work with
JS/jQuery all the time.

I was excited to see WordPress on the list of OPW sponsors, since it's
something I use a lot and I really like the community.  :)  I've wanted to
contribute to an open source project for years, but have struggled to
figure out how to get started.  So I'd love it if we could find a good
place for me to help out.

Anyhow, I wanted to share my thoughts about the Post by Email plugin.  I
could get excited about quite a few of the things on the GSoC page, but
this one seems like it's been a bit neglected (at least insofar as
proposals on wp-hackers).  So I dug into it.

There's already a ticket in Trac (
http://core.trac.wordpress.org/ticket/22942) with a patch to deprecate the
core Post By Email functionality.  This project would be to build a
standalone plugin that would serve as a drop-in replacement, and ultimately
improve the user experience.  An overview of the way the core functionality
currently works is outlined in the Codex:

This would involve the following tasks:

1. Convert wp-mail.php over to the Plugin API.
  - Plugin install: look for old settings and copy them over into the
plugin's options (get them out of the core database settings).
  - Create plugin settings page that shows an activity/error log.

2. Update refresh methods
  - Automatic refresh hooked to the 'shutdown' action, with configurable
refresh time -- NOTE this still requires a hit to the blog to run.  (Is
there a good alternative that isn't wp-cron?  Looks like that plugin is no
longer supported.)
  - Remove the old methods from the Codex (loading up wp-mail automatically
or in an iframe - this will probably still work)
  - Replace these with a manual "refresh" button on the plugin settings,
and maybe a template tag if we still want to support the iframe thing

3. Extend the current deprecation patch
  - Include instructions (or maybe auto-install?) for the new plugin (not
sure what the protocol is for this, I presume we want to handle it the same
way as Links).
  - wp-mail.php should just call the action hook.

4. Submit for community feedback and testing!  Squish bugs.

5. Extend functionality (Order and priority TBD by discussion with mentors)
  - HTML emails
  - support attachments (will be added to the media library for that post
and embedded)
  - support IMAP access (right now only POP) and SSL
  - add support for tags/categories/custom taxonomies (shortcodes?)
  - streamline publishing, maybe with an admin panel to vet unpublished
posts (not sure how this works in the current version, should review)
  - whitelist sender emails (this is what LiveJournal does) -- looks like
the current behavior does vet the sending address against authorized users,
so maybe there is nothing to do here, but we should review and see if it
needs improvement
  - PIN based authentication?  Might save us some grief about
security-through-obscurity email addresses.

6. Finally, edit/update the Codex page to reflect the new state of the art.
 (This should maybe be moved higher in the list.)

I've noticed that two plugins already implement many of these changes.
 Jetpack (http://jetpack.me/support/post-by-email/), which was discussed in
the Trac ticket, and Postie (http://wordpress.org/extend/plugins/postie/ ),
which was not.  Postie replaces all of wp-mail.php and is being actively
developed.  Does this change whether we want to build an official plugin?

I'd appreciate any feedback!



More information about the wp-hackers mailing list