Social 2.0 for WordPress

I’m very excited about today’s release of Social 2.0, a WordPress plugin from MailChimp. This is perhaps my favorite WordPress plugin; it is complex and ambitious, but I love the way it helps build a bridge between social networks and WordPress – a platform where we can really own our data.

Social Comments

Social has a couple of high level features:

  1. It enables broadcasting your WordPress content to social networks.
  2. It brings back reactions from those social networks to your own site.
  3. It lets people log in through social networks to comment – identity generally leads to better conversations.
  4. It allows the sharing of comments on your site to social networks.
  5. It does all of this without requiring you to register as a developer with the social networks and create your own apps.

This sort of integration is fraught with edge cases and little gotchas. For version 2.0 we looked at what we had with 1.x, looked at our road map for Social, bit down hard and decided to do a full rewrite for 2.0.

The downside of the rewrite was how long it took to get 2.0 released, but by doing it now we have a much more extensible platform on which to add connections to other services (Google+, for example) and we had less to refactor than we would have had we waited.

Along with the full rewrite, there are a bunch of new features in 2.0. Here are a few of them:

  • Changed the way authentication works, to improve security.
  • Added support for posting to Facebook Pages as well as profiles.
  • When someone Likes one of your broadcasts on Facebook, that is pulled in to your site.
  • New visual presentation of Retweets and Likes, so that the activity is visible but the discussion is less cluttered. We also have a smart algorithm for trying to match retweets that are not marked as such by Twitter’s API.
  • If you respond to a comment imported from Twitter on your site and broadcasting that back to Twitter, the “in reply to” thread is correctly maintained.
  • Where possible, comments on your WordPress site are threaded to match discussions that happened on social sites.
  • A new queuing system for the checking of for social reactions, along with features that should reduce (hopefully eliminate) reactions from creating duplicate comments.
  • Delayed broadcasting for future posts and comments that are held for moderation.
  • The ability to enable broadcasting by default on new posts (please use this judiciously) to selected globally authenticated accounts as well as selected personal accounts.
  • Convenience links in the admin bar and on the post list page to allow you to manually check for social reactions on a post.
  • A ton of edge case handling for things like changing from bit.ly to wp.me URLs after publishing a post, respecting private tweets, etc.

I have a few good examples to demonstrate how Social brings in comments and displays them. Unfortunately some of these were pulled in before I started running the Social 2.0 codeline so not all of the retweets, etc. are displayed as cleanly as they will be in the future.

Big thanks to MailChimp for their support of Social. They are not only the primary benefactor of the plugin, but they also run the service that allows WordPress to connect to Twitter and Facebook without the pain and hassle of registering as a developer and creating apps for each platform.

Social’s source code is hosted on GitHub and built in the open in the best tradition of Open Source. Pull requests, enhancements and feedback are welcome.

This post is part of the project: Social. View the project timeline for more context on this post.