After months of effort, thousands of hours of development, and some pseudo-literal blood, sweat and tears – we’re proud to bring you WP eCommerce 3.8.14! While I was privileged to take the lead on this release, it was an incredible effort by developers, QA teams, beta testers and support staff. I want to highlight a few people […]

After months of effort, thousands of hours of development, and some pseudo-literal blood, sweat and tears – we’re proud to bring you WP eCommerce 3.8.14!

\n

While I was privileged to take the lead on this release, it was an incredible effort by developers, QA teams, beta testers and support staff. I want to highlight a few people whose efforts were particularly notable in this release:

\n

First off, my hat goes off to Jeffrey Schutzman. He was, in all measurable ways, the most significant contributor to this release. It was a pleasure working with him on several facets of this release – from the javascript refactoring to the checkout workflow enhancements to the new WPSC_Countries/WPSC_Region classes and more. He’s an incredibly smart and talented individual and we’re grateful to have him participating in our community. Not everyone knows or realizes this, but all of the open source contribution to WP eCommerce is completely donated time. That means the hundreds, if not thousands, of hours that Jeff and I have poured into WP eCommerce 3.8.14 over the last 3 months has been out of the love for the project. I don’t say that to give myself any credit, but simply to honor the dedication and sacrifices that Jeffrey has made for all of us in his work on this release. Cheers, Jeff!

\n

But that’s not all. We’ll go over numbers in just a second, but there were two other “MVPs” in this release. If you use UPS or USPS, you’ll no doubt notice notable performance improvements, fewer bugs and better extendibility for developers in those modules on this release. That is due to the incredibly diligent work of Jorge Aguayo, a phenomenally helpful developer who contributed a ton to this release. We’re super grateful for his continued contributions.

\n

Lastly – the entire support staff at Instinct has been a huge help in the QA process throughout the entire release, but the especially exhaustive efforts of Mihai (you’ll know him as @misiculus on wordpress.org and GitHub) this release were absolutely invaluable. He found more bugs as we were developing than perhaps anyone else. Thanks, Mihai!

\n

Some quick (and somewhat mind-bending) numbers on this release:

\n

\n

We’ve added well over 50+ new actions and filters.

\n

There were 185 files changed.

\n

21,125 insertions(+), 15,387 deletions(-)

\n

249 Issues closed (That’s THREE TIMES more than any release on GitHub to date)

\n

13 Contributors

\n

1,084 Commits

\n

Touched approximately 65% of the codebase.

\n

\n

All that change, and we still aim to keep our promise of 100% backwards compatibility. Suffice to say – we’re ready for some sleep Missed our RC release outlining some of the new features (not to mention a fancy video :))? Go check it out.

\n

So please, backup your databases and websites, and take WP eCommerce 3.8.14 for a spin. We know you’ll be delighted.

We’re elated to announce the release candidate for WP eCommerce 3.8.14! This is one of our biggest releases to date, and to celebrate, we made you a little video Notice the bags under my eyes? It’s been a very long few months and a massive team effort (More on the team in the release post) […]

This is one of our biggest releases to date, and to celebrate, we made you a little video

\n

\n

Notice the bags under my eyes? It’s been a very long few months and a massive team effort (More on the team in the release post) with thousands of man-hours going into this release.

\n

For the exhaustive list of changes made this release, feel free to review our commit log or our closed issues on GitHub. An abbreviated changelog will be included with the final release.

\n

That said, there are at least 4 major changes and a few minor changes that we’d love for you to test. ALWAYS backup your database and files before testing the newest release. Here’s what we’d love heavy testing on:

\n

\n

External Shipping and Payment APIs.

\n

Customer Meta API

\n

Checkout Workflow

\n

Product Add/Edit UI

\n

\n

Major Changes

\n

These are areas that we’ve given complete overhauls. If you’re using a shipping module like FedEx or UPS – be sure to test that they work as expected! We’ve added some really great APIs and classes for developer to utilize for accessing countries and regions, and we’re using them ourselves in core. Everything seems to be working great (and with significantly improved performance!) – but do please test. Related areas to test would be on any custom payment gateways (including PayPal, Stripe, Authorize.net and others).

\n

If you’re a developer who has interfaced with our customer meta API (Functions like wpsc_get_customer_meta()), we’ve completely overhauled that architecture. For those who noticed a massive influx of “anonymous users” in their 3.8.13 install, this release fixes that by moving the entire customer architecture away from WP Users. It works beautifully and we think you’ll love it – but do test!

\n

An area that we’re particularly proud of is the massive improvements made to our checkout workflow UI. We’ve closed out countless bugs in this specific area, improved performance and created a more awesome user experience here. Be sure to test this, especially if you have a heavily customized theme.

\n

Finally, we’ve made great strides in our product editing/adding user interface. We’ve streamlined, cut back, and made the most important data more visible than ever before. We love it – but we’d love to hear your thoughts on it!

\n

Minor Changes

\n

We’ve added dozens (if not hundreds) of new filters and actions in this release, and fixed over 200 bugs. To call the effort “Herculean” would be an understatement. There are a few important behavioral changes that we (and many of our beta testers) consider improvements, but they are definitely changes to be aware of:

\n

\n

We’ve modified some of the behavior in how taxes and coupons work together, and in turn, how total cart prices are calculated. For more context, read up on GitHub.

\n

We’ve improved the security of our IPN response handling for PayPal Standard. If you use PayPal Standard, be sure to test this.

\n

Our UPS and USPS modules, as mentioned above, have been significantly improved. If you use these, test them extensively.

\n

We’ve improved bbPress + WPeC compatibility.

\n

Our prior releases had “dynamic” javascript and CSS files, both in the admin and front-end. These were often-times significant performance bottlenecks (on some sites, taking up to 10 seconds to load!). We’ve removed these and attempted to maintain backwards compatibility along with fulfilling the original intent of those dynamic files. This should prove to be a great performance improvement, but again – if you relied heavily on these, please test!

\n

\n

A final, repetitive note: Please, please, please make a backup before testing – but, just as important – please test

After being in development for 3 months, we’re so excited to announce that the 3.8.14 release of WP eCommerce is imminent! We need lots of help beta testing to make sure we’re able to launch this as successfully as possible. This is perhaps one of the most extensive overhauls of WP eCommerce in the last […]

After being in development for 3 months, we’re so excited to announce that the 3.8.14 release of WP eCommerce is imminent! We need lots of help beta testing to make sure we’re able to launch this as successfully as possible.

\n

This is perhaps one of the most extensive overhauls of WP eCommerce in the last year. For developers, we’ve introduced dozens of new actions and filters, a completely refactored Customer Meta API, brand new classes for interfacing with Countries and Regions and significantly improved internal documentation.

\n

For users, you’ll notice significant performance improvements on the front and back-end, especially on the checkout process. Speaking of the checkout process, we spent nearly 100 hours digging through our internals and refactoring TONS of the checkout process. In doing so, we’ve eliminated dozens of bugs, especially surrounding our “Shipping Same as Billing” functionality. Beyond that, parts of the checkout process have been significantly improved with regards to performance and usability. One of the most special areas we’ve been working on this release is implementing a significantly overhauled and improved interface for adding and editing your products. We’ve removed a LOAD of clutter and given easier access to the information you need.

\n

We’re so excited for you to check everything out! On top of the areas we’ve already mentioned, as you can see on our GitHub repository, we’ve closed out over 200 bugsin this release cycle. We’re pretty proud of that accomplishment, and we’re sure you will be, too.

\n

So please, get your staging servers set up and help us test this beta release of WP eCommerce 3.8.14. As always, be sure to back up your website before installing the beta, and never run beta software on a production server. Even with all of the overhauling we’ve done, our goal is 100% backwards compatibility – so we won’t know if we’ve broken anything until you test on your staging site and tell us how you’re getting on

WP e-Commerce 3.8.13.3 is available for download! Nearly a week passed since our last bug fix release 3.8.13.2 and we have received many positive feedback as it has addressed most of the issues introduced in our previous major release. Today we’re making 3.8.13.3 official, which addresses several minor bugs our users are still encountering: * […]

WP e-Commerce 3.8.13.2 is ready for download! After 3.8.13 upgrade, a lot of our users were alarmed when they see many anonymous users with cryptic names appearing in their WordPress admin Users page. These user accounts are harmless and are used to collect anonymous customer data (such as cart items, shipping / billing locations etc.). […]

After 3.8.13 upgrade, a lot of our users were alarmed when they see many anonymous users with cryptic names appearing in their WordPress admin Users page. These user accounts are harmless and are used to collect anonymous customer data (such as cart items, shipping / billing locations etc.). However we acknowledge that displaying them in the admin area proved to be confusing and we apologize for the inconvenience.

\n

In this release, we’re taking the first steps to fix the 3 major issues with anonymous customers that our users have:

\n

* Anonymous customers should not be visible in admin UI.\r\n* Cronjob to purge anonymous customers doesn\'t work due to memory issues.\r\n* Anonymous cart items are lost after signing in.\r\n

\n

In the upcoming releases, we will continue to improve the customer data storage system so that it uses up as little space as possible in your database.

\n

It is extremely important that before you upgrade to WPEC 3.8.13.2, please back up your files and databases. Backup Buddy is our top choice for making backup simple and effortless.

\n

How to upgrade WP e-Commerce

\n

You can simply use WordPress automatic updates feature to download and install WP e-Commerce 3.8.13.2.

\n

If that doesn’t work for you, try the following steps for a manual upgrade:

Merry Christmas folks!!! We’re pleased to announce the 3.8.13 release of the WP e-Commerce Plugin. This release comes with some new stuff, some changes and some fixes. You can find all the details below. We’re hoping this release is the last 3.8.x release before we roll up our sleeves, strap on the boxing gloves and […]

We’re pleased to announce the 3.8.13 release of the WP e-Commerce Plugin. This release comes with some new stuff, some changes and some fixes. You can find all the details below.

\n

We’re hoping this release is the last 3.8.x release before we roll up our sleeves, strap on the boxing gloves and push out WPEC 3.9 with new bbPress inspired template engine. Its going to be a fun 2014… I’m thinking free themes (or was that freed themes), new products and a whole Lotta WordCamp.

\n

Download 3.8.13 and let us know what you think. If you have any questions or comments regarding this release please let us know in the comments section below.

The support for multiple buckets is here! Our Amazon S3 plugin will now support multiple buckets. Simply select the setting to be “All Buckets” in Products -> S3 Downloads and all your qualified Amazon S3 files should show up under Amazon S3 Tab in the product page settings. Check out this plugin at http://getshopped.org/premium-upgrades/premium-plugin/amazon-s3-plugin/ Regards, […]

As announced since may 2013, Google has shut down Google Checkout service. This means WP e-Commerce store owners will no longer be able to accept payments using their service starting today (November 20 2013). You can read the official announcement here! What this means for you (WPEC store owner) is that you will no longer […]

As announced since may 2013, Google has shut down Google Checkout service. This means WP e-Commerce store owners will no longer be able to accept payments using their service starting today (November 20 2013).

We know some of WP e-Commerce store owners use, or at least used to use, Google Checkout for taking in payments and because we don`t want you to loose sales over this we have already create a payment gateway for Braintree and WP e-Commerce.

\n

The gateway is available as a Premium Plugin and can be purchased right now!

We’re pleased to announce that WP e-Commerce Plugin 3.8.13 beta 1 is ready for community testing. For the users we have - We now use the new WordPress media UI for product images - Tidied up UI on all the Store Settings pages except presentation settings (which will be replaced entirely when we introduce the […]

We’re pleased to announce that WP e-Commerce Plugin 3.8.13 beta 1 is ready for community testing.

\n

For the users we have

\n

- We now use the new WordPress media UI for product images

\n

- Tidied up UI on all the Store Settings pages except presentation settings (which will be replaced entirely when we introduce the new Theme Engine)

\n

- Fixed a bug with DropShop causing it to not work with latest version of WPEC and WP

\n

- All sorts of fixes here and there to help make WPEC ever more awesome

\n

And for the developers we have

\n

- Cart items API

\n

- Custom meta API

\n

- Stats API (coming soon)

\n

To conclude

\n

To conclude we would like to ask that you have a fiddle and let us know what you think. Stay tuned for our new website, and the imminent and official 3.8.13 release which will be coming sometime soon. Patches and contributions via Github are always welcome

One of things I like the most about Blox Theme by ThemeZilla is the Portfolio functionality. The only thing that I didn’t like about the Blox Theme was that this most desirable of features was trapped in Blox with no clear way out! So that being the case and seeming we needed the functionality on our […]

One of things I like the most about Blox Theme by ThemeZilla is the Portfolio functionality.

\n

The only thing that I didn’t like about the Blox Theme was that this most desirable of features was trapped in Blox with no clear way out!

\n

So that being the case and seeming we needed the functionality on our own upcoming new website we decided that it might just make sense to extrapolate the functionality and make it into a standalone Plugin so that all fellow Portfolio fans might benefit.

WordPress 4.0 Beta 2 is now available for download and testing. This is software still in development, so we don’t recommend that you run it on a production site. To get the beta, try the WordPress Beta Tester plugin (you’ll want “bleeding edge nightlies”). Or you can download the beta here (zip).

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:60:\"http://wordpress.org/news/2014/07/wordpress-4-0-beta-2/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:1;a:6:{s:4:\"data\";s:45:\"\n \n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:20:\"WordPress 4.0 Beta 1\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"http://wordpress.org/news/2014/07/wordpress-4-0-beta-1/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:64:\"http://wordpress.org/news/2014/07/wordpress-4-0-beta-1/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 10 Jul 2014 10:17:41 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:2:{i:0;a:5:{s:4:\"data\";s:11:\"Development\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}i:1;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3248\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:329:\"WordPress 4.0 Beta 1 is now available! This software is still in development, so we don’t recommend you run it on a production site. Consider setting up a test site just to play with the new version. To test WordPress 4.0, try the WordPress Beta Tester plugin (you’ll want “bleeding edge nightlies”). Or you can […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:15:\"Helen Hou-Sandi\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:4025:\"

WordPress 4.0 Beta 1 is now available!

\n

This software is still in development, so we don’t recommend you run it on a production site. Consider setting up a test site just to play with the new version. To test WordPress 4.0, try the WordPress Beta Tester plugin (you’ll want “bleeding edge nightlies”). Or you can download the beta here (zip).

\n

4.0 is due out next month, but to get there, we need your help testing what we’ve been working on:

\n

\n

Previews of embedding via URLs in the visual editor and the “Insert from URL” tab in the media modal. Try pasting a URL (such as a WordPress.tv or YouTube video) onto its own line in the visual editor. (#28195, #15490)

\n

The Media Library now has a “grid” view in addition to the existing list view. Clicking on an item takes you into a modal where you can see a larger preview and edit information about that attachment, and you can navigate between items right from the modal without closing it. (#24716)

\n

We’re freshening up the plugin install experience. You’ll see some early visual changes as well as more information when searching for plugins and viewing details. (#28785, #27440)

The editor intelligently resizes and its top and bottom bars pin when needed. Browsers don’t like to agree on where to put things like cursors, so if you find a bug here, please also let us know your browser and operating system. (#28328)

\n

We’ve made some improvements to how your keyboard and cursor interact with TinyMCE views such as the gallery preview. Much like the editor resizing and scrolling improvements, knowing about your setup is particularly important for bug reports here. (#28595)

\n

Widgets in the Customizer are now loaded in a separate panel. (#27406)

\n

We’ve also made some changes to some formatting functions, so if you see quotes curling in the wrong direction, please file a bug report.

Developers: Never fear, we haven’t forgotten you. There’s plenty for you, too – more on that in upcoming posts. In the meantime, check out the API for panels in the Customizer.

\n

Happy testing!

\n

Plugins, editor\nMedia, things in between\nPlease help look for bugs

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:60:\"http://wordpress.org/news/2014/07/wordpress-4-0-beta-1/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:2;a:6:{s:4:\"data\";s:42:\"\n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"WordPress 3.9.1 Maintenance Release\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:50:\"http://wordpress.org/news/2014/05/wordpress-3-9-1/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:59:\"http://wordpress.org/news/2014/05/wordpress-3-9-1/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 08 May 2014 18:40:58 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3241\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:385:\"After three weeks and more than 9 million downloads of WordPress 3.9, we’re pleased to announce that WordPress 3.9.1 is now available. This maintenance release fixes 34 bugs in 3.9, including numerous fixes for multisite networks, customizing widgets while previewing themes, and the updated visual editor. We’ve also made some improvements to the new audio/video […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Andrew Nacin\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:3077:\"

After three weeks and more than 9 million downloads of WordPress 3.9, we’re pleased to announce that WordPress 3.9.1 is now available.

\n

This maintenance release fixes 34 bugs in 3.9, including numerous fixes for multisite networks, customizing widgets while previewing themes, and the updated visual editor. We’ve also made some improvements to the new audio/video playlists feature and made some adjustments to improve performance. For a full list of changes, consult the list of tickets and the changelog.

\n

If you are one of the millions already running WordPress 3.9, we’ve started rolling out automatic background updates for 3.9.1. For sites that support them, of course.

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"http://wordpress.org/news/2014/05/wordpress-3-9-1/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:3;a:6:{s:4:\"data\";s:42:\"\n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:25:\"WordPress 3.9 “Smith”\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:40:\"http://wordpress.org/news/2014/04/smith/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:49:\"http://wordpress.org/news/2014/04/smith/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Wed, 16 Apr 2014 18:33:44 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3154\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:411:\"Version 3.9 of WordPress, named “Smith” in honor of jazz organist Jimmy Smith, is available for download or update in your WordPress dashboard. This release features a number of refinements that we hope you’ll love. A smoother media editing experience Improved visual editing The updated visual editor has improved speed, accessibility, and mobile support. You can paste into the […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:14:\"Matt Mullenweg\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:23298:\"

Version 3.9 of WordPress, named “Smith” in honor of jazz organist Jimmy Smith, is available for download or update in your WordPress dashboard. This release features a number of refinements that we hope you’ll love.

\n\n

A smoother media editing experience

\n

\n

\n

Improved visual editing

\n

The updated visual editor has improved speed, accessibility, and mobile support. You can paste into the visual editor from your word processor without wasting time to clean up messy styling. (Yeah, we’re talking about you, Microsoft Word.)

\n

\n

\n

\n

\n

Edit images easily

\n

With quicker access to crop and rotation tools, it’s now much easier to edit your images while editing posts. You can also scale images directly in the editor to find just the right fit.

\n

\n

\n

\n

\n

Drag and drop your images

\n

Uploading your images is easier than ever. Just grab them from your desktop and drop them in the editor.

\n

\n

\n\n

Gallery previews

\n

\n

Galleries display a beautiful grid of images right in the editor, just like they do in your published post.

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:45:\"http://wordpress.org/news/2014/04/smith/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:4;a:6:{s:4:\"data\";s:45:\"\n \n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"WordPress 3.9 Release Candidate 2\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:68:\"http://wordpress.org/news/2014/04/wordpress-3-9-release-candidate-2/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:77:\"http://wordpress.org/news/2014/04/wordpress-3-9-release-candidate-2/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 15 Apr 2014 09:47:36 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:2:{i:0;a:5:{s:4:\"data\";s:11:\"Development\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}i:1;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3151\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:356:\"The second release candidate for WordPress 3.9 is now available for testing. If you haven’t tested 3.9 yet, you’re running out of time! We made about five dozen changes since the first release candidate, and those changes are all helpfully summarized in our weekly post on the development blog. Probably the biggest fixes are to live […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Andrew Nacin\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:2273:\"

The second release candidate for WordPress 3.9 is now available for testing.

\n

If you haven’t tested 3.9 yet, you’re running out of time! We made about five dozen changes since the first release candidate, and those changes are all helpfully summarized in our weekly post on the development blog. Probably the biggest fixes are to live widget previews and the new theme browser, along with some extra TinyMCE compatibility and some RTL fixes.

\n

Plugin authors: Could you test your plugins against 3.9, and if they’re compatible, make sure they are marked as tested up to 3.9? It only takes a few minutes and this really helps make launch easier. Be sure to follow along the core development blog; we’ve been posting notes for developers for 3.9. (For example: HTML5, symlinks, MySQL, Plupload.)

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:73:\"http://wordpress.org/news/2014/04/wordpress-3-9-release-candidate-2/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:5;a:6:{s:4:\"data\";s:42:\"\n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:35:\"WordPress 3.8.3 Maintenance Release\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:50:\"http://wordpress.org/news/2014/04/wordpress-3-8-3/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:59:\"http://wordpress.org/news/2014/04/wordpress-3-8-3/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Mon, 14 Apr 2014 19:29:13 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:1:{i:0;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3145\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:338:\"WordPress 3.8.3 is now available to fix a small but unfortunate bug in the WordPress 3.8.2 security release. The “Quick Draft” tool on the dashboard screen was broken in the 3.8.2 update. If you tried to use it, your draft would disappear and it wouldn’t save. While we doubt anyone was writing a novella using […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Andrew Nacin\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:2339:\"

The “Quick Draft” tool on the dashboard screen was broken in the 3.8.2 update. If you tried to use it, your draft would disappear and it wouldn’t save. While we doubt anyone was writing a novella using this tool, any loss of content is unacceptable to us.

\n

We recognize how much trust you place in us to safeguard your content, and we take this responsibility very seriously. We’re sorry we let you down.

\n

We’ve all lost words we’ve written before, like an email thanks to a cat on the keyboard or a term paper to a blue screen of death. Over the last few WordPress releases, we’ve made a number of improvements to features like autosaves and revisions. With revisions, an old edit can always be restored. We’re trying our hardest to save your content somewhere even if your power goes out or your browser crashes. We even monitor your internet connection and prevent you from hitting that “Publish” button at the exact moment the coffee shop Wi-Fi has a hiccup.

\n

It’s possible that the quick draft you lost last week is still in the database, and just hidden from view. As an added complication, these “discarded drafts” normally get deleted after seven days, and it’s already been six days since the release. If we were able to rescue your draft, you’ll see it on the “All Posts” screen after you update to 3.8.3. (We’ll also be pushing 3.8.3 out as a background update, so you may just see a draft appear.)

\n

So, if you tried to jot down a quick idea last week, I hope WordPress has recovered it for you. Maybe it’ll turn into that novella.

This affected version 3.7.2 as well, so we’re pushing a 3.7.3 to these installs, but we’d encourage you to update to the latest and greatest.

\n\n

Now for some good news:\nWordPress 3.9 is near.\nExpect it this week

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"http://wordpress.org/news/2014/04/wordpress-3-8-3/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:6;a:6:{s:4:\"data\";s:45:\"\n \n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"WordPress 3.9 Release Candidate\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:66:\"http://wordpress.org/news/2014/04/wordpress-3-9-release-candidate/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:75:\"http://wordpress.org/news/2014/04/wordpress-3-9-release-candidate/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 08 Apr 2014 21:05:21 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:2:{i:0;a:5:{s:4:\"data\";s:11:\"Development\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}i:1;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3129\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:338:\"As teased earlier, the first release candidate for WordPress 3.9 is now available for testing! We hope to ship WordPress 3.9 next week, but we need your help to get there. If you haven’t tested 3.9 yet, there’s no time like the present. (Please, not on a production site, unless you’re adventurous.) To test WordPress 3.9 […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Andrew Nacin\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:2967:\"

As teased earlier, the first release candidate for WordPress 3.9 is now available for testing!

\n

We hope to ship WordPress 3.9 next week, but we need your help to get there. If you haven’t tested 3.9 yet, there’s no time like the present. (Please, not on a production site, unless you’re adventurous.)

If you’re a plugin author, there are two important changes in particular to be aware of:

\n

\n

TinyMCE received a major update, to version 4.0. Any editor plugins written for TinyMCE 3.x might require some updates. (If things broke, we’d like to hear about them so we can make adjustments.) For more, see TinyMCE’s migration guide and API documentation, and the notes on the core development blog.

\n

WordPress 3.9 now uses the MySQLi Improved extension for sites running PHP 5.5. Any plugins that made direct calls to mysql_* functions will experience some problems on these sites. For more information, see the notes on the core development blog.

\n

\n

Be sure to follow along the core development blog, where we will be continuing to post notes for developers for 3.9. (For example, read this if you are using Masonry in your theme.) And please, please update your plugin’s Tested up to version in the readme to 3.9 before April 16.

\n

Release candidate\nThis haiku’s the easy one\n3.9 is near

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:71:\"http://wordpress.org/news/2014/04/wordpress-3-9-release-candidate/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:7;a:6:{s:4:\"data\";s:45:\"\n \n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:32:\"WordPress 3.8.2 Security Release\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:50:\"http://wordpress.org/news/2014/04/wordpress-3-8-2/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:59:\"http://wordpress.org/news/2014/04/wordpress-3-8-2/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 08 Apr 2014 19:04:44 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:2:{i:0;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}i:1;a:5:{s:4:\"data\";s:8:\"Security\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3124\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:355:\"WordPress 3.8.2 is now available. This is an important security release for all previous versions and we strongly encourage you to update your sites immediately. This releases fixes a weakness that could let an attacker force their way into your site by forging authentication cookies. This was discovered and fixed by Jon Cave of the WordPress […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Andrew Nacin\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:2272:\"

WordPress 3.8.2 is now available. This is an important security release for all previous versions and we strongly encourage you to update your sites immediately.

\n

This releases fixes a weakness that could let an attacker force their way into your site by forging authentication cookies. This was discovered and fixed by Jon Cave of the WordPress security team.

\n

It also contains a fix to prevent a user with the Contributor role from improperly publishing posts. Reported by edik.

\n

This release also fixes nine bugs and contains three other security hardening changes:

Sites that support automatic background updates will be updated to WordPress 3.8.2 within 12 hours. If you are still on WordPress 3.7.1, you will be updated to 3.7.2, which contains the same security fixes as 3.8.2. We don’t support older versions, so please update to 3.8.2 for the latest and greatest.

\n

Already testing WordPress 3.9? The first release candidate is now available (zip) and it contains these security fixes. Look for a full announcement later today; we expect to release 3.9 next week.

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"http://wordpress.org/news/2014/04/wordpress-3-8-2/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:8;a:6:{s:4:\"data\";s:45:\"\n \n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:20:\"WordPress 3.9 Beta 3\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"http://wordpress.org/news/2014/03/wordpress-3-9-beta-3/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:64:\"http://wordpress.org/news/2014/03/wordpress-3-9-beta-3/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sat, 29 Mar 2014 13:15:10 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:2:{i:0;a:5:{s:4:\"data\";s:11:\"Development\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}i:1;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3106\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:373:\"The third (and maybe last) beta of WordPress 3.9 is now available for download. Beta 3 includes more than 200 changes, including: New features like live widget previews and the new theme installer are now more ready for prime time, so check ‘em out. UI refinements when editing images and when working with media in the editor. We’ve also brought […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Andrew Nacin\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:2668:\"

The third (and maybe last) beta of WordPress 3.9 is now available for download.

New features like live widget previews and the new theme installer are now more ready for prime time, so check ‘em out.

\n

UI refinements when editing images and when working with media in the editor. We’ve also brought back some of the advanced display settings for images.

\n

If you want to test out audio and video playlists, the links will appear in the media manager once you’ve uploaded an audio or video file.

\n

For theme developers, we’ve added HTML5 caption support (#26642) to match the new gallery support (#26697).

\n

The formatting function that turns straight quotes into smart quotes (among other things) underwent some changes to drastically speed it up, so let us know if you see anything weird.

\n

\n

We need your help. We’re still aiming for an April release, which means the next week will be critical for identifying and squashing bugs. If you’re just joining us, please see the Beta 1 announcement post for what to look out for.

\n

If you think you’ve found a bug, you can post to the Alpha/Beta area in the support forums, where friendly moderators are standing by. Plugin developers, if you haven’t tested WordPress 3.9 yet, now is the time — and be sure to update the “tested up to” version for your plugins so they’re listed as compatible with 3.9.

\n

This software is still in development, so we don’t recommend you run it on a production site. Consider setting up a test site just to play with the new version. To test WordPress 3.9, try the WordPress Beta Tester plugin (you’ll want “bleeding edge nightlies”). Or you can download the beta here (zip).

\n

WordPress 3.9\nLet’s make the date official\nIt’s April 16

\n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:36:\"http://wellformedweb.org/CommentAPI/\";a:1:{s:10:\"commentRss\";a:1:{i:0;a:5:{s:4:\"data\";s:60:\"http://wordpress.org/news/2014/03/wordpress-3-9-beta-3/feed/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:38:\"http://purl.org/rss/1.0/modules/slash/\";a:1:{s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:1:\"0\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:9;a:6:{s:4:\"data\";s:45:\"\n \n \n \n \n \n \n \n\n \n \n \n \n \n \";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:5:{s:0:\"\";a:7:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:20:\"WordPress 3.9 Beta 2\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:55:\"http://wordpress.org/news/2014/03/wordpress-3-9-beta-2/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"comments\";a:1:{i:0;a:5:{s:4:\"data\";s:64:\"http://wordpress.org/news/2014/03/wordpress-3-9-beta-2/#comments\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Thu, 20 Mar 2014 05:01:25 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:8:\"category\";a:2:{i:0;a:5:{s:4:\"data\";s:11:\"Development\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}i:1;a:5:{s:4:\"data\";s:8:\"Releases\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:33:\"http://wordpress.org/news/?p=3101\";s:7:\"attribs\";a:1:{s:0:\"\";a:1:{s:11:\"isPermaLink\";s:5:\"false\";}}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:309:\"WordPress 3.9 Beta 2 is now available for testing! We’ve made more than a hundred changes since Beta 1, but we still need your help if we’re going to hit our goal of an April release. For what to look out for, please head on over to the Beta 1 announcement post. Some of the changes in […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"Andrew Nacin\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:40:\"http://purl.org/rss/1.0/modules/content/\";a:1:{s:7:\"encoded\";a:1:{i:0;a:5:{s:4:\"data\";s:1901:\"

WordPress 3.9 Beta 2 is now available for testing!

\n

We’ve made more than a hundred changes since Beta 1, but we still need your help if we’re going to hit our goal of an April release. For what to look out for, please head on over to the Beta 1 announcement post. Some of the changes in Beta 2 include:

\n

\n

Rendering of embedded audio and video players directly in the visual editor.

\n

Visual and functional improvements to the editor, the media manager, and theme installer.

This software is still in development, so we don’t recommend you run it on a production site. Consider setting up a test site just to play with the new version. To test WordPress 3.9, try the WordPress Beta Tester plugin (you’ll want “bleeding edge nightlies”). Or you can download the beta here (zip).

The WordPress toolbar is shown by default to all users, but administration screen links aren’t always useful for everyone. For example, on most sites the subscriber user role is very limited and doesn’t require access to the backend.

\n

Disable Toolbar is a new plugin that gives administrators the ability to turn the toolbar off on the frontend, based on user roles. It adds a list of all user roles on the site to Settings > Toolbar and even includes roles added by other plugins. Check the roles for which you want to remove the toolbar.

\n

\n

There are many plugins in the repository dedicated to hiding the toolbar. This one is different in that it hides it only on the frontend. The admin area will always display the toolbar, even if you’ve elected to hide it for certain user roles on the frontend. It also hides the toolbar option on user profiles if that user is already restricted from seeing the toolbar.

\n

I tested the plugin and can verify that it works as advertised to show/hide the toolbar based on role. Instead of disabling the toolbar across the board, this one works nicely to hide it selectively, according to your requirements. You can download Disable Toolbar from WordPress.org.

\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sun, 03 Aug 2014 15:04:59 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"WordPress.tv\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:4;a:6:{s:4:\"data\";s:13:\"\n \n \n \n \n \n \n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:49:\"Lorelle on WP: Speed Blogging Tips and Techniques\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:37:\"http://lorelle.wordpress.com/?p=11795\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:75:\"http://lorelle.wordpress.com/2014/08/03/speed-blogging-tips-and-techniques/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:492:\"The following are the workshop notes for my popular workshop on “Speed Blogging.” The workshop is designed to teach how to take charge of your website and keep the content flowing with enthusiasm over the long term by learning the shortcuts, tips, and techniques to speed up the process of blogging, allowing your blog to […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sun, 03 Aug 2014 12:25:55 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:17:\"Lorelle VanFossen\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:5;a:6:{s:4:\"data\";s:13:\"\n \n \n \n \n \n \n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:98:\"WordPress.tv: George Stephanis: Moving your Plugin to GitHub – Trials, Tribulations, and Testing\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:28:\"http://wordpress.tv/?p=36544\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:109:\"http://wordpress.tv/2014/08/02/george-stephanis-moving-your-plugin-to-github-trials-tribulations-and-testing/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:742:\"

\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sat, 02 Aug 2014 15:44:19 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:12:\"WordPress.tv\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:8;a:6:{s:4:\"data\";s:13:\"\n \n \n \n \n \n \n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:71:\"Lorelle on WP: Sale on Lorelle’s Book “Social Media for Crafters”\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:37:\"http://lorelle.wordpress.com/?p=11787\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:88:\"http://lorelle.wordpress.com/2014/08/01/sale-on-lorelles-book-social-media-for-crafters/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:481:\"I’ve updated my popular ebook, “Social Media for Crafters,” and it’s on sale for the next week in honor of the Willamette Writers Conference in Portland, Oregon, and to celebrate the power of the written word. The book will be on sale for only $2.99 USD. I’ve not had a sale on my books since […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Sat, 02 Aug 2014 05:52:18 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:17:\"Lorelle VanFossen\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:9;a:6:{s:4:\"data\";s:13:\"\n \n \n \n \n \n \n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:60:\"WPTavern: WPWeekly Episode 156 – A Crowdfunding Roundtable\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:44:\"http://wptavern.com?p=27552&preview_id=27552\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:156:\"http://wptavern.com/wpweekly-episode-156-a-crowdfunding-roundtable?utm_source=rss&utm_medium=rss&utm_campaign=wpweekly-episode-156-a-crowdfunding-roundtable\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:4934:\"

In this episode of WordPress Weekly, Marcus Couch and I are joined by three gentleman who have gone through the crowdfunding experience.

\n

\n

Scott Kingsley Clark is a Senior Web Engineer at 10up. He’s also the lead developer of the Pods Framework and a number of other WordPress plugins. He used Kickstarter in September of 2011 and asked for $1,500. He ended up with $4,177 with 91 backers.

\n

\n

\n

John Saddington is best known in the WordPress community for his work on the WordPress news site, WP Daily, which was acquired by WP Engine last year. He’s the lead developer of Pressgram, an iOS app to capture, edit, and publish mobile photos to your site or blog. He used Kickstarter in April of 2013 to raise $50,000. He received $56,500 from 498 backers.

There are two important lessons I learned from today’s show. First, always ask for more money than you think you need. Having more money is better than running out. Second, structure gifts to backers so that it works towards completing the project versus being a distraction. Although it’s a long show, there is a lot of great information.

Stories Discussed:

Plugins Picked By Marcus:

\n

Kickstarter Tracker Widget – This widget uses cURL to fetch and parse the summary of a Kickstarter project’s funding metrics. With the widget, you can display the number of backers, current amount funded, percentage funded, and days left on the project. This also displays a large call to action button in order to promote and help drive traffic to your Kickstarter page.

All-in-one WPML Crowdfunding Campaigns – Unify WPML translation versions of a crowdfunding campaign so that contributions to each language version count towards the main campaign. If you are running a multilingual crowdfunding website and you want a single campaign to have multiple language versions, this is the plugin you need. It works alongside WPML and Fundify Crowdfunding, ensuring that when you have created translations of your campaign, contributions to each language-specific version of the campaign count towards the same campaign. This plugin is easy to use and requires zero configuration.

TechCrunch is one of the largest sites publishing with WordPress and its developers are always looking to improve performance to maximize engagement and ad revenue. This week the team open sourced its WP Async Task Library, which was created to offload time-consuming tasks into background tasks. Alex Khadiwala and Nico Vincent introduced the library at the Big Media & Enterprise Meetup in San Francisco within their “Non-Blocking WordPress” presentation.

\n

Essentially, the purpose of the async task library is to identify anything on page load that blocks better performance and relegate it to a background task. Vincent and Khadiwala offer an example of how the library works to reduce API calls when loading CrunchBase cards:

\n

On the TechCrunch site, loading CrunchBase cards on article pages is an example of a process that could slow down the site, since the information needed for each card becomes available via the CrunchBase API. To improve performance, we cache a copy of their data for about 12 hours. But when we initially retrieve that data or refresh it, we don’t want the API call to affect our page load time.

\n

In both instances, we instead kick off an asynchronous call back to our site with the instruction to retrieve and cache this data to be available the next time it is needed, instead of waiting for a response from their API.

\n

Prior to addressing TechCrunch’s performance issues, the site could take up to 17 seconds to load, as it was calling more than 100 assets. Thanks to the new task library, the situation has been dramatically improved. “Since the redesign, we’ve improved overall performance by 5 to 8 times by implementing the WP Async Task library, among other important back-end and front-end improvements,” the team reported.

\n

WP Async Task is available as a standalone plugin or developers can bundle it into their own plugins and themes. The quick start section of the documentation shows you how to use it in your own code.

\n

It’s always exciting when one of the larger WordPress-powered publishers make their tools available to the community, because these projects tend to be the result of many developer hours. WP Async Task has the potential to benefit many other media sites running on WordPress thanks to the TechCrunch development team. The code is now available on GitHub under the MIT license and the team welcomes your contributions.

Designer and developer Anders Norén has been making a name for himself with his beautifully minimalist WordPress themes. Norén strives for simplicity on the page and in his code, and his five free themes collectively have nearly 130,000 downloads on WordPress.org.

\n

Radcliffe is the newest of his creations, designed specifically for writers. Ordinarily, themes for writers tend to focus primarily on the typography, but Radcliffe is different in that Norén places images front and center.

\n

\n

The theme showcases full-screen featured images along with your writing. Radcliffe is responsive with retina-ready assets, which means that it will respond nicely to devices large and small.

\n

Single posts feature beautiful typography along with a full width header image, making your writing easy to read without distractions.

\n

\n

Check out a live demo of the theme along with Norén’s other themes and his current works in progress on his website.

\n

Radcliffe customization options include support for uploading your own logo, changing the accent color, and three widget areas in the footer. All of the options are built into WordPress’ native customizer.

\n

Radcliffe is a unique writer-focused theme in that it presents images as an equal part alongside the text-based content. It could also easily be used as a photoblog or a photo-heavy personal blog. You can download Radcliffe for free from WordPress.org or install it directly within your admin theme browser.

The best approach is to think like a 100% owner of your company with long-term time horizon. Then you work backward to the present and see what makes sense and what remains. Versus, here is what we have now, how do we carry it forward?

There was a small increase in spam numbers since June – about 5%, but a 71% increase from last year in July. That’s about the same yearly increase as the one was saw in last month.

\n

We also saw 310,275,000 legitimate comments made, which makes up only 5% of the total comments we see going around. If each real comment were a book, there would enough to fill only 8 Libraries of Congress (still not bad!).

\n

Our busiest day was July 8 with about 240 million pieces of spam, and our slowest day was 6 with 133 million comments. Not a big range.

\n

Overall, we missed only about 0.0206% of all spam comments this month. Although there weren’t any big fluctuations in our missed spam numbers this month, your missed spam numbers may be different. If you’re seeing more missed spam than usual come through, please do contact us and we’ll be happy to help:).

\n

Here’s how much spam and ham came through each day of the month:

\n

\n

This month we did not have any service interruptions. You are welcome to follow us on Twitter or this blog for updates on that.

\n

Here are some interesting articles on spam from around the web we liked this month:

We’ve entered the future, folks. With the help of the LaunchKey plugin, you can now log into your WordPress site using your phone’s biometric facial and fingerprint scanning capabilities.

\n

The LaunchKey mobile authentication platform has been pioneering multi-factor authentication for WordPress sites via its official plugin since 2013. The plugin has received glowing five-star reviews from users who enjoy logging in without a password. It is the first plugin to protect your site with biometric face and fingerprint scanning.

\n

LaunchKey CEO and Co-Founder Geoff Sanders said the platform currently supports all devices that support biometric facial scanning and a limited number of devices for the fingerprint scan.

\n

Our support for fingerprint scan is currently limited to the devices that gives us access to their fingerprint scanner, which at this time is only the Samsung Galaxy S5. As more devices with fingerprint scan become available, we’ll add support, including iOS devices with the release of iOS 8.

\n

If you’ve ever enabled the fingerprint scan for unlocking your device, the WordPress authentication works in a similar way, except you will be scanning your finger to authorize an authentication request. “Since this functionality piggy backs off of the device fingerprint scan, there is no initial pairing or registration process,” Sanders said. “It simply needs to be enabled through the control panel.”

\n

\n

How to Set Up Biometric Authentication for WordPress

\n

If you want to set up biometric authentication for your WordPress site, you’ll need to download the LaunchKey mobile app in the Apple App Store or Google Play, pair a device, and enable the face scan through the control panel.

\n

“During initial setup, you will be prompted to take 10 pictures of your face to map the dimensions and depths of your unique facial features,” Sanders explained. “From this point forward (until you disable it), you will be prompted with a facial scan to authorize authentication and login requests that come through LaunchKey Mobile.”

\n

Biometric Security

\n

Worried about having your biometric data stored by a third party? LaunchKey is totally anonymous and maintains your privacy. “All biometric data collected for these new authentication factors is encrypted and stored locally on the device and not on LaunchKey servers,” Sanders emphasized. “This also applies to all other authentication factor data used with LaunchKey such as geographic coordinates (used for geofencing), PIN codes, combinations, etc. LaunchKey is an anonymous service, and we don’t even have the ability to authenticate on behalf of our users.”

\n

LaunchKey Prioritizes WordPress Integration

\n

While the LaunchKey platform offers integration for both Drupal and Magento, as well as 16 web and mobile SDKs, protocol integrations (OAuth, OpenID, SSH), WordPress has emerged as a major priority.

\n

“WordPress integration is a priority for LaunchKey because not only does it power over 20% of the internet, it’s vulnerable to the same password vulnerabilities inherent to any password-based system, and that’s exactly what LaunchKey was created to address,” Sanders told the Tavern.

\n

The LaunchKey WordPress plugin has only been downloaded around 2,400 times, but users seem very satisfied with it. “We’ve stayed fairly quiet to date as we’ve really been more in R&D mode, but staying ‘stealth’ wasn’t something we wanted to do,” Sanders said.

\n

“We wanted to test our technology out in the real world. As with anyone that uses LaunchKey, the WordPress owners who use our plugin immediately love that we’ve removed the hassle of passwords from their login flow which vastly improves their user experience of WordPress. Counterintuitively, LaunchKey’s friendlier user experience offers more security than password-based authentication, even at its most basic use with no other factors of authentication enabled.”

\n

Even if LaunchKey provides a simpler way to authenticate, the challenge is getting WordPress users to see the value of the added security. Many users are familiar with WordPress.com’s Two Step Authentication, which utilizes the Google Authenticator app, and other two-factor authentication plugins for self-hosted sites. But Sanders explains how these methods are different from LaunchKey:

\n

Google Authenticator is simply an interface for the open protocol knows as one time passwords (tOTP) which are the tokens used in the traditional 2-step authentication flow used on top of passwords. LaunchKey offers our own OTP authenticator inside our mobile app which provides the same functionality. (Our OTP authenticator actually offers more protection than Google Authenticator due to the numerous optional auth factors we can protect the app itself with such as geofencing, PIN or combo lock, etc.)

\n

LaunchKey was designed to be a full authentication platform that replaces passwords entirely. The platform also allows you to end sessions remotely, require use of specific auth factors, or even restrict logins to specific geographical zones or timeframes.

\n

If you’re tired of passwords and want the added protection of authenticating with your face or your fingerprint, check out the LaunchKey website for more information. The app is free and its corresponding plugin is available on WordPress.org.

Jetpack is sporting a new logo in the 3.1 release announced today as part of a re-branding inspired by its growth. “Jetpack is ever-evolving and is a major part of Automattic and WordPress. It’s grown a lot since its introduction in 2011, and its branding should grow too. Something better, faster, stronger,” Enej Bajgoric explained with the unveiling of the new logo.

\n

Jetpack 3.1 also introduces custom post types and adds the long-awaited portfolio content type, which is likely to be the first of many. The Portfolio Custom Post Type allows users to manage and showcase projects and is easily displayed using the the [portfolio]shortcode. WordPress theme developers can elect to support Jetpack’s portfolio post type by styling it to match the theme, instead of building their own.

\n

\n

Theme developers will also enjoy the new responsive video support built into Jetpack. It can be enabled with one simple line of code:

\n

<?php add_theme_support( \'jetpack-responsive-videos\' ); ?>

\n

With that code in place, all videos on the site will respond nicely to mobile devices with no extra markup. Jetpack users who were previously using other plugins to get responsive videos will now be able to eliminate those.

\n

The 3.1 release also introduces additional JSON API endpoints for viewing updates and managing plugins and themes. You can check it out by playing with the WordPress.com developer console.

i18n: Change the priority of where plugin_textdomain is hooked so that the plugins can better translate Jetpack.

\n

Monitor: Displays how often the site is checked for downtime.

\n

Shortcode: Added Mixcloud shortcode and oEmbed support.

\n

Social Links: Improved handling of customizer hooks in non-admin context.

\n

Stats: The smiley image is gone by default.

\n

Stats: Added link to the configure page for stats so that the stats settings page is easier to find.

\n

Theme Tools: Added the responsive videos to theme tools so that themes can support responsive videos more easily.

\n

Updated Genericons to version 3.1, new icons for website, ellipsis, foursquare, x-post, sitemap, hierarchy and paintbrush.

\n

\n

The Jetpack team further iterated on the admin overhaul that added bulk module management in 3.0. This release includes a number of tweaks to module management, allowing you to activate, configure, and deactivate Jetpack features in the feature description box. The update notice should already be available in your admin. Update now to take advantage of all the enhancements in 3.1.

When adding or editing images in the WordPress media library, there is a drop down menu that allows you to filter between all media items, only the items uploaded to the post, images, audio, and video. By default, the media library shows all media items. If you find yourself constantly having to switch from all media items to only those uploaded to a post, consider using the Default Media Uploader View plugin by Leemon.

\nMedia Library Drop Down\n

While activated, you’ll see items uploaded to the post by default. I tested the plugin on WordPress 3.9.1 and it works fine without any conflicts. It should, considering it’s an incredibly simple plugin. Despite opening the media library hundreds of times, I had no idea this drop down menu existed. It’s nice to be able to filter the media library to just items used in the post.

\n

Let us know in the comments if this plugin saves you any mouse clicks.

WordCamp San Francisco is one of the largest, annual events, dedicated to WordPress. But is it just another WordCamp, or something else? Eric Mann points out the confusing nature of the event and suggests using a different qualifier.

\n

From an outsider looking in, the only difference between a WordCamp in SF and a WordCamp in Portland is the location. From a sponsor’s perspective, from a new attendee’s perspective, from a new speaker’s perspective they’re the same. But the “official” status of SF changes all of that for those of us who’ve been in the community a bit longer.

\n

Back in 2011, Jen Mylo proposed changing the name of WCSF to WordCon in an effort to officially differentiate it. A community member registered the domain before Mylo, forcing a name change. After thinking of different names, the decision was made to keep it as WCSF with an effort to point out that the event is more than just a local WordCamp.

\n

Eventually, Matt said, “Why can’t it just be WordCamp SF?” And I decided he was right (partly because the owner of wordcon.com had not given any indication of wanting to sell the domain to us). The history of the event and its name ultimately carry more weight than my desire for event naming consistency. We just need to make it clearer that WordCamp SF is special, something more than a local WordCamp. We need to say distinctly:

\n

WordCamp San Francisco is the official annual conference of the WordPress project.

\n

So far, the event is not being marketed or touted as being something special. The WCSF 2014 website doesn’t have any information explaining why it’s different from a regular WordCamp. However, its listing on WordCamp Central specifies it being the official, annual conference. At the very least, there should be an About page with a bit of history and an explanation as to why it’s considered the official, annual conference of the WordPress project. I’d also like to see a list of items that make it special, compared to other WordCamps. It wouldn’t hurt to have specific branding as well. The only people who know it’s a special event are previous attendees and those who hear about it by word of mouth.

\n

@ericmann@jeffr0 I\'m with you, Eric. Haven\'t attended WCSF, but talked w/others who attended. Very different event from \"regular\" WordCamp.

A Real World Example Showing The Need For A Distinction

\n

At a local WordPress meetup I attended, I spoke with a gentleman who recently started using WordPress. He had attended his first local WordCamp and decided that he was going to further his WordPress knowledge. Since he didn’t have a huge budget, he asked me which WordPress conference would give him the most bang for the buck. I told him WordCamp San Francisco. He asked why, isn’t that just our WordCamp but on a bigger scale? Yes, I answered, but it’s different from every other WordCamp. I told him it’s one of the largest WordPress conferences of the year and is organized by the co-creator of WordPress. Developers, business owners, and attendees from all walks of life will be there. If he could only attend one out-of-state WordPress conference, WCSF is it.

\n

You see, he didn’t know about all this. He’s new to WordPress and its community. According to him, WCSF is just another WordCamp except bigger and he didn’t see the value or worth of traveling to attend something he could easily drive to. This is why there needs to be more of a distinction created between WCSF being the official, annual conference of the WordPress project and not just another WordCamp.

\n

I’m not advocating for a name change because it’s already been tried. But short of one, what other suggestions do you have for those new to WordPress and its community to understand WCSF is not just another WordCamp?

Developers who are new to BuddyPress sometimes find BP templates confusing to work with. Common questions include: Why are there so many? Where do I place the files? How can I override the templates in my project?

\n

BP Project Framework is a plugin from the folks at WebDevStudios that provides a boilerplate for new custom BuddyPress projects. Essentially, it adds all the BuddyPress templates you need in the convenience of a plugin.

\n

BuddyPress has included WordPress theme compatibility since version 1.7, which means that you can activate the plugin and it will work with nearly any theme. However, if you want to customize BuddyPress-specific features, you will need to override the BP templates. Ordinarily, you would copy those templates from the BuddyPress plugin folder into your theme folder. BP Project Framework allows you to skip this step by creating a new template stack.

\n

The plugin includes all of the necessary BP templates in the /templates directory and customizing any of those files will override the core templates. You can also place custom JS and CSS in /templates/js/bp-custom.js and /templates/js/bp-custom.css respectively. The /inc directory includes files for placing custom actions, filters, template tags, and widgets.

\n

\n

The bp-custom.php file contains example code for easily customizing BuddyPress. If you’re new to BuddyPress development, you’ll want to check out that file to get an overview of some quick customization options.

\n

The advantage of putting BP templates into this plugin over building them into the current theme is that you can easily activate and deactivate the plugin. It also allows you to maintain your templates if you decide to change themes, without having to move the template files.

\n

When you have the BP Project Framework installed, BuddyPress will first look to the plugin for its template files and then will default to BP core if any are missing. Simply activate the plugin and start adding custom code, edit the template markup and add custom CSS and JS. The plugin has no settings, but the development team at WebDevStudios plans to add some new features and options in the future.

\n

You can find BP Project Framework on GitHub. It’s a great resource for new BuddyPress developers who want a quick start for adding custom code and working with BP templates.

A recently published article by WPBeginner explains how to export email address from the comments and import them into a mailing list. While the article advises getting the user’s permission, everything about this practice rubs me the wrong way. If you’re going to do this, please put a big banner near the comments that states your intentions. A quick and easy way to do this is to use the Show Comment Policy plugin by Jimmy Peña. The comment policy text will be displayed above the commenting area.

\nShow Comment Policy Settings\n

I’m most concerned about sites that export email addresses from existing comments. At least give those people the common courtesy of being notified and provide them the option to opt-out immediately. In fact, it may be against the law in certain countries to outright harvest the email addresses. Better yet, instead of getting involved with this practice, just turn commenting off on the site.

\n

Are you ok with the email address you gave to a site in order to leave a comment, being added to an email list as long as you’re notified?

When you have a question about a WordPress theme, where do you look for more information? Theme developers make use of a myriad of documentation methods, from bundling docs to linking to external resources. If you’ve already created a theme and taken the time to document it, then your next challenge is to make its documentation easy to discover.

\n

When documentation isn’t readily available, users will take to the forums to get answers to common questions that could have easily been outlined in a few quick notes. This increases your support burden and causes delays for users who are trying to customize your theme. Let’s examine a few ways to make theme documentation easier to find.

\n

WordPress.org Theme Documentation Recommendations

\n

Themes hosted on WordPress.org tend to enjoy a large audience and have guidelines to protect their large user base. I spoke with Chip Bennett, who heads up the WordPress.org Theme Review team, to find out how WordPress.org recommends documenting themes. These recommendations are helpful even if you’re documenting a commercial theme or one not hosted on WordPress.org.

\n

Where is the best place for a WordPress theme author to place documentation so that their users can easily find it?

\n

Bennett’s advice, as quoted below, includes a combination of four different methods:

\n\n

readme.txt\nThe Theme Review Team recommends placing all theme documentation in a readme file, ideally in the format of the Plugin-standard readme.txt markdown.

\n

Admin Contextual Help Tab\nAnother good documentation location that is woefully underused is the WP Admin contextual help tab. Themes that incorporate a settings page should definitely consider using the fairly rich Contextual Help API.

\n

Forum Sticky Post\nFor any immediate support issues, a support forum sticky is a great idea.

\n

Theme URI for External Docs\nAnd finally, themes can declare a Theme URI, which is intended to be an information/documentation resource for the theme. If any of the built-in documentation methods are too limiting, theme developers are welcome and encouraged to use ThemeURI (which can be a domain, subdomain, or landing page specific to the Theme, or even a GitHub repo/site for the Theme, with documentation).

\n\n

Theme Documentation Best Practices and Examples

\n

\n

Now that we’ve covered where to place theme documentation, what should be included? Bennett recommends that you start with licensing attribution and use documentation to explain setup and anything out of the ordinary.

\n

“Some best practices for theme documentation include explicitly stating the copyright/license attribute for all resources bundled with the theme, explaining any unusual/non-standard setup instructions for the theme, and explaining any non-core-UI theme functionality,” he said. “For inline documentation, I strongly encourage developers to follow the phpDoc standard, which improves readability, and allows for automation of generation of theme documentation.”

\n

Best practices for theme documentation are not unduly strict, in that you can utilize virtually any route you choose, extending beyond the four methods recommended by the Theme Review Team.

\n

“Almost any method of documentation is encouraged,” Bennett said. “Theme developers can certainly bundle help docs with their themes. Some use plain-text readme.txt or readme.md files; others use HTML files, rich-text documents, or even PDFs,” he said.

\n

“The only downside is that there is no standard/easy way for the end user to find/use those documents,” Bennett cautioned. “Again, the Contextual Help API could be useful (it can be used to display rich text/HTML, or to link to a Theme-bundled PDF, for example), as well as the Theme URI.”

\n

Bennett also notes that the way you choose to implement theme features will directly affect how much documentation you need to produce. “Another important best practice is always to incorporate features using the WordPress core implementation, so that fewer such features even need to be documented,” he said.

\n

“For example, when implementing custom header images or custom backgrounds, using the core implementation provides a standard, intuitive UI for the end user. Similarly, when implementing a custom static front page, or a custom blog posts template, properly implementing the Template Hierarchy will avoid the need to provide instructions for a non-standard implementation of those features.”

\n

Bennett offered a few examples of themes that have solid easy-to-find documentation. He developed his Oenology theme with excellent documentation as an intentional goal. The Oenology options page makes use of the contextual help tab to provide additional information on settings, FAQ, a changelog, support, and licensing.

\n

\n

Theme developers can check out Oenology theme files to see how Bennett incorporates documentation into the theme itself. He also recommends Underscores as a well-documented theme.

\n

More Documentation Options Coming to WordPress.org

\n

WordPress.org plugin authors have the option of adding additional documentation to the FAQ and Installation tabs. When I spoke with Bennett, he explained that theme authors do not yet have this capability.

\n

“The Theme Directory is much more limited because, while the Theme and Plugin directories look essentially the same on the front end, they are two entirely different beasts under the hood,” he said. “The infrastructures are different. That said, there will be some changes in the (nearish?) future, that will allow the Theme directory to emulate the same (or similar) functionality, based on a standard readme file format.”

\n

The Theme Review Team will be discussing how improvements can be implemented, but it’s not yet clear what those changes will look like. In the meantime, theme authors can make use of the solid documentation recommendations Bennett outlined.

\n

Good documentation requires a little bit of strategy to find the best way to connect with your users when they need help. Chip Bennett’s tips are useful to all WordPress theme authors, whether you’re creating a custom theme for a client, selling a commercial theme, or supporting a free theme on WordPress.org. A combination of approaches via the readme.txt, inline documentation, contextual help and external docs at the Theme URI will cover all your bases.

\n

Take the time to create high quality documentation and you’ll find that the burden of support will decrease. As a WordPress.org theme author, I’d prefer to spend my time making updates and developing new features and themes. Using WordPress core implementation for features and providing good docs is the best way to free up your time to do more of the fun stuff – creating beautiful themes that users will love.

After using WordPress for seven years in a row, it’s hard to consider switching to another publishing platform. I have my gripes about WordPress and there are plenty of things that can improve the publishing process. However, after testing a few other open source alternatives, I was reminded of how many things I take for granted in WordPress. Here are seven WordPress things I take for granted.

\n

The Visual Editor

\n

For the longest time, the visual editor in WordPress has been the bane of existence for so many users. It has a reputation for screwing up code snippets and ruining the formatting of text. In the past two years, there have been several improvements to the editor that make it my favorite way to write a post. These are just a few of my favorites, some of which are slated for WordPress 4.0. oEmbed support, oEmbed previews, sticky toolbar, automatic resizing based on the amount and type of content, and the ability to easily edit inserted media.

\n

After using a few different themes, I’ve determined support for visual editor styles to be a killer feature. If executed properly, content within the visual editor looks the same as it does on the frontend of the site. After using a theme that executes this feature properly, it’s hard to use a theme that doesn’t support it.

\nVisual Editor In WordPress 4.0 With oEmbed Previews\n

One Click and Automatic Updates

\n

As far as I’m concerned, any content management system that doesn’t have an easy way to upgrade within the software is stuck in the past. WordPress 2.7 “Coltrane” introduced the ability to upgrade WordPress with one click. Gone are the days of manually uploading files via FTP. Being able to upgrade plugins, themes, and WordPress with the click of a button is a huge time saver. If you want to fully automate the process, you can configure WordPress to automatically update core, themes, and plugins.

\n

Vast Amount Of Plugins and Themes To Choose From

\n

Considered a negative by some, I think the large amount of free themes and plugins to choose from is a huge benefit. It gives users across the world a chance to turn WordPress into their WordPress. Because of the wide assortment of themes and plugins available, the chances of two WordPress installations being exactly the same are slim. Sure, there is a lot to choose from, but I’d rather have too much choice than too little.

\nPlugin Count As Of July 29th, 2014\n

Akismet

\n

Despite Akismet not being 100% accurate in determining who spammers are, it’s saved me a lot of time (24 days to be exact) and grief. It’s available for free for non-commercial use and ships with WordPress. There are plenty of alternatives to handle comment spam but I’ve never had a reason to switch. Other content management systems I’ve tested either don’t have an anti spam solution built-in or are tied into the Akismet service. At the time of writing, Akismet has protected the Tavern from 109,288 spam comments with an accuracy rating of 99.19%.

\nAkismet Stats For The Tavern\n

An Abundance Of Resources

\n

Being used on over 22% of the web has its perks. If I don’t know how to do something with or in WordPress, the answer is usually a Google search away. Someone has either written a tutorial or knows about a plugin that has the functionality I’m looking for and a lot of the information is free of charge.

\n

The WordPress Community

\n

The WordPress community is global. People all over the world are helping each other go farther with WordPress. People who don’t know each other are showing up to local area meetups and becoming best friends. I’ve seen first-hand veterans of the community stop what they are doing and provide a helping hand. More often than not, if we see someone struggling with their WordPress website, we do what we can to help them.

\nWCSF Contributor Day\n

The Time So Many People Spend Improving The Project

\n

Notice how I didn’t say improving the software. That’s because WordPress is more than just software, it’s like a big tree with several branches. There are a ton of people all over the world helping to make the project better through individual and team contributions. Most are not paid but simply want to improve their favorite part of the project. This includes documentation, organizing meetups, WordCamp planning, improving the core of WordPress, and other initiatives.

\n

Many of the contributions go unnoticed and contributing to WordPress can be a thankless job sometimes. Not every contribution is world-changing; some are more important than others. The bottom line is, every contribution no matter how small, makes a difference.

Their number one reason for leaving WordPress is bloat but their explanation of bloat is different from most I’ve read.

\n

WordPress; like a lot of CMS platforms; relies heavily on plugins for extra functionality over and above the core services. The main issue, however, is that these plugins are not actively vetted out (or tested) by core team members to ensure they use optimized code and are safe for your site. This means that by installing a plugin, you can bring down your whole site and cause yourself mountains of headaches all because you wanted to add some extra functionality.

\n

The bloat they speak of is not from the core of WordPress, but due to the number of plugins they installed. They are the ones responsible for the bloat, not WordPress. While they raise a good point about plugins not being vetted from a code quality stand point, they are vetted to make sure they don’t contain security vulnerabilities and follow the WordPress plugin directory guidelines.

\n

According to CMS Critic, Cramer reviews most of the modules before they end up in the official directory. He gives developers a list of improvements and advice that helps limit the potential of modules conflicting with each other. The review process has helped keep problems stemming from modules to a minimum but I don’t see how it can scale. If the CMS ever reaches the point of receiving 20-50 modules per day, Cramer will need to find help or risk losing precious development time.

\n

WordPress Plugin Update Fatigue Is Real

\n

As for updates, each plugin and theme installed in WordPress increases the chance you’ll see an upgrade notice each time you login to the backend. Despite upgrades being as easy as clicking a button, having to go through the process every day can become cumbersome. CMS Critic makes a good point in that you can’t tell the difference between a critical update and a bug fix release. As far as the user is concerned, every update is critical.

\nLooks Like I Have A Few Plugins To Update\n

While most plugins have a changelog where you can see what changes are in the latest release, themes do not. This is something that will be addressed when the WordPress theme directory receives a major overhaul. Even if a change log is available, it’s not always clear to the user if the update requires immediate.

\n

What makes all of this a moot point is the security advice of always run the latest version of WordPress which could be extended to plugins and themes. If you follow that advice, it doesn’t matter whether an update is critical or not. There will likely never be a system in place to determine the importance of an update because it creates another layer of complexity involving a decision that shouldn’t be complex at all.

\n

The development philosophy of “iterate and release often” works fine for services like WordPress.com, but not so much for WordPress, themes, and plugins. Coen Jacobs wrote an excellent post explaining why not all WordPress plugins should iterate quickly and release often.

\n

Of course, it’s a great thing to be able to develop new features at a fast pace, be able to quickly deliver this to your users (or to add an extra layer of complexity: to your customers) and release a couple fix releases in the time between. But it also requires your users to deal with this number of updates, or they might be at risk of falling behind or have potential security issues in their websites.

\n

Update fatigue is a real and should be avoided if possible. The problem is compounded as the number of installed plugins increases. I’d like more plugin developers to come up with a better release strategy instead of sending out an update as soon as they’ve fixed a bug. Beginning with WordPress 3.7, users have the ability to automatically upgrade core, plugins, and themes. However, turning on automatic updates because a plugin is updating too much is a poor reason to use the feature. It’s worth noting that automatic updates are impossible for certain sites to use such as eCommerce or those that use version control to verify updates before they go live.

\n

My Experience Using ProcessWire

\n

In order to see what all the fuss is about, I installed ProcessWire on my local server. Installation is easy and didn’t require me to edit a configuration file. Here is what a sites looks like after a fresh install.

\nProcessWire Fresh Install\n

The backend of ProcessWire is simple but coming from WordPress, is like being on a new planet. Everything I’m familiar with in terms of creating content is missing. I can create pages but from a background of knowing pages are more for static content, I’m not sure if that’s the optimum method of creating content. There’s no welcome screen, no signs of help if I need it, and it quickly becomes obvious this is created by developers, for developers.

\nThe Backend Of ProcessWire\n

After using the CMS for 30 minutes, I promptly gave up trying to do anything cool with it. ProcessWire has a modules directory to add functionality to the platform but it’s not accessible from within the CMS without the modules manager.

\n

ProcessWire comes with a lot of bundled modules that can be turned on or off. This allows you to specifically determine how much functionality your site has. Over the years, there have been several discussions on whether WordPress should start moving its feature set into separate plugins. This is where I appreciate the decisions, not options philosophy of WordPress. I’d rather be given a strict feature set and then add-on to it with plugins. I couldn’t care less about enabling/disabling core functionality but I understand how this is a great feature for developers.

\nModule Management In ProcessWire\n

ProcessWire is based on the premise of everything being an API call away. “Underneath, ProcessWire 2 is a purely API-driven content management framework that is fully functional without any sort of admin interface.” WordPress is steadily moving in the same direction, especially once the JSON REST API makes its way into core.

\n

ProcessWire Wouldn’t Be My First Choice

\n

I’m happy to see another GPL licensed project gaining steam and finding a place all its own. The community is active and the main developer has over 8,000 forum posts. They also have a showcase filled with websites using the software. If you’d like to check out ProcessWire for yourself, they have a demo available which shows an already created, public facing website. You can also log in to the backend to see how it looks and functions.

\n

If I were going to switch from WordPress to another publishing system, ProcessWire wouldn’t be my first choice. There are several reasons why. First, I’m not a user within their target market. Second, most of what I want out of a publishing system it doesn’t have out of the box. If it does, it’s not obvious. Last but not least, because of the way ProcessWire functions, it doesn’t have a way to install new themes for the frontend of the site. Great for developers, terrible for users.

\n

Several of the reasons CMS Critic moved from WordPress I think are benefits, not detriments to the project. It’s great that they’ve found a project that is more in line with what they need but with the nature of evolving software, how long will it take before iterations and improvements have them looking for yet another CMS to switch to? In most software projects, end users far outnumber developers. I get the impression that most of the users for ProcessWire are developers. If the project doesn’t decide to cater to end users, I don’t see it ever becoming much more than an addition to a developer’s toy box.

\n

There are plenty of things that need improvement in WordPress, but after using ProcessWire for 30 minutes, I was reminded of how many things I take for granted. More on that in a future post.

\n

What do you think of ProcessWire? Is it something you can see yourself switching to or building client sites with? What parts of ProcessWire can be used as inspiration for future improvements in WordPress?

As the engineer and writer Alex Payne put it, these startups represent “the field offices of a large distributed workforce assembled by venture capitalists and their associate institutions,” doing low-overhead, low-risk R&D for five corporate giants. In such a system, the real disillusionment isn’t the discovery that you’re unlikely to become a billionaire; it’s the realization that your feeling of autonomy is a fantasy, and that the vast majority of you have been set up to fail by design.

WordCamp Hanoi is set to have three presentation tracks to include the business side of WordPress, using WordPress, and developing for WordPress. The call for speakers is open and applications will close on August 11. Organizers are looking for volunteers to help with food, shopping, creating speaker gift bags, designing and organizing badges, and all the other behind-the-scenes magic that powers WordCamps.

\n

The Hanoi WordPress Group has been meeting for the past two years and its members have created a friendly atmosphere for connecting with other local enthusiasts. Philip Arthur Moore, one of the organizers of the event, is hoping that same atmosphere will be part of Vietnam’s first WordCamp. “Our goal this year is to keep the event simple, cozy, small, and familial, something that our group has done a good job of maintaining since its 2012 start,” he said.

\n

WordCamp Hanoi will feature a diverse range of presentations to interest as many different kinds of WordPress users as possible. If you’re planning on being in Hanoi during September, watch for the ticket announcement so you don’t miss this historic WordPress event.

Many Google Maps plugins have a convoluted admin workflow for creating locations in WordPress. Some of the clunkier solutions actually require you to look up longitude and latitude coordinates to manually input for pinpointing. Very few maps plugins utilize custom post types to provide a user-friendly input.

\n

Stellar Places is a new plugin designed to provide an intuitive way to create, manage and display locations in WordPress. The plugin registers a custom post type for locations with integrated Google maps. Once activated, a new Places menu shows up in the WordPress admin:

\n

\n

Scroll down to enter location data, which is pulled in via Google Maps. You can enter an exact address, just the cross streets, exact coordinates, etc. There’s a good deal of flexibility in entering a location to pinpoint. The map and extra data fields are automatically updated with your location, without refreshing the page.

\n

\n

Places added can be accessed on the front end via the location listing view or single location view with the associated maps. Maps can be inserted into a page or post using the [stellar_places_map] shortcode. Stellar Places also allows you to display multiple locations on the same map.

\n

\n

The shortcode for embedding places is extremely customizable and includes parameters for customizing HTML attributes, such as ID, class, width, and height. It also includes query parameters for limiting the display by post_type, taxonomy, term, category, and post_id. Shortcode map settings allow you to specify latitude/longitude for the map center, mapType, scrollwheel, zoom, minzoom, maxzoom, and infowindows.

\n

The plugin is also mobile-friendly and produces responsive maps that are easy to navigate on devices. This makes it ideal for featuring local events, divided by categories. You could also use it to create a store locator for businesses that have multiple physical locations. Each location gets its own dedicated page and will automatically appear in the list of all locations.

An easy-to-use maps plugin that looks and feels like native WordPress is long overdue. I tested Stellar Places and found that it works as advertised. The process of adding new places is intuitive and maps can be tailored to your exact specifications with the many options available in the shortcode. If you’re looking to try a new Google Maps plugin for WordPress, download Stellar Places for free from WordPress.org.

While there are many excellent plugins that make migrations easier for developers, WordPress migration as a service hasn’t been widely marketed. MigrateWP is a new business dedicated solely to providing smooth, painless migrations for people who don’t have the skills or time move a site from one host to another. Pricing starts at $200 and includes DNS migration and a free site audit. Larger and more complex migrations range from $300-$750.

\n

\n

Founder Daniel Griffiths describes MigrateWP as a curated migration and conversion service for WordPress. Griffiths is best known for his work as an Easy Digital Downloads extension developer and is also the founder of the Redux Framework. During the course of his work, he found migrations to be a source of continual frustration for the average WordPress user.

\n

“The idea came about as a direct result of a series of issues posted in the Easy Digital Downloads support forum related to migration issues experienced by one of our users,” Griffiths said. “I came to the realization that no matter how well documented, migrations suck! Even for someone who’s done a few, they’re a headache and for a new user, they’re downright impossible.”

\n

A Hands-On Migration Service with No Automation

\n

After researching the problem, Griffiths found that there are very few resources available to facilitate site migration, let alone conversion, for end users who aren’t technically inclined. “Yes, there are a few other services, but they all suffer from one fatal flaw: automation,” he said. “MigrateWP was built on the premise that no matter how well thought out, automated systems can’t compare with the reliability that manual processes can.”

\n

Griffiths hand-tailors the migration process for each user’s unique scenario, and all migrations are completed hands-on by specialists with a high level of experience. This enables MigrateWP employees to ensure data integrity and customer satisfaction.

\n

“Beyond the basic migration component, we do site conversions, full site auditing, and every migration is run through malware checks both before and after the migration process to ensure the client receives a clean site when the process is finished,” Griffiths said.

\n

Customers often have no idea how much information they will need to provide access to in the course of a migration. I asked Griffiths how he plans to simplify the process of interfacing with his clients’ old and new hosts. “Before the migration begins, we personally contact every client to work out the details of the migration,” he said. However, the initial contact on the website is designed to be quick, without attempting to capture all of the information required.

\n

“Our client contact form is extremely simple for a reason,” Griffiths said. “Particularly in the case of companies, it’s unreasonable to expect a single individual to know all the details up front. After all, companies frequently have multiple employees responsible for various facets of their tech. This may well include different people responsible for the physical hardware as opposed to software, or corporate staff changeovers.”

\n

Griffiths’ team first performs a site review and engages each potential client directly to get a grasp of the actual migration before proceeding. He is aiming to hire a 5-10 person staff within the first year.

\n

In the future, he hopes to attract developers to utilize his service, in addition to assisting end users who don’t have the skills to migrate their own sites. Any capable WordPress developer should be able to easily handle an average site migration, but Griffiths hopes to free up their time by creating agreements with development agencies or hosting providers to manage their client migrations.

\n

The commitment to provide a more personalized migration experience with no automation is what Griffiths hopes will distinguish MigrateWP from its competitors. Many hosts already offer free automated migration when you sign up for a new account. Do you think end users are more likely to utilize a dedicated migration service or will MigrateWP find more success among developers and agencies?

\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 29 Jul 2014 18:12:50 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:13:\"Sarah Gooding\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:37;a:6:{s:4:\"data\";s:13:\"\n \n \n \n \n \n \n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:71:\"Lorelle on WP: Code Standards Project to Take WordPress Into the Future\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:37:\"http://lorelle.wordpress.com/?p=11770\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:97:\"http://lorelle.wordpress.com/2014/07/29/code-standards-project-to-take-wordpress-into-the-future/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:525:\"WP Tavern reported recently that WordPress Developers are organizing a community initiative to standardize common post types, taxonomies and meta data. Led by Justin Tadlock, popular WordPress developer and author of Professional WordPress Plugin Development, the goals of the community project are to name these common parts of WordPress to create a more stable and […]\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:7:\"pubDate\";a:1:{i:0;a:5:{s:4:\"data\";s:31:\"Tue, 29 Jul 2014 16:57:41 +0000\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}s:32:\"http://purl.org/dc/elements/1.1/\";a:1:{s:7:\"creator\";a:1:{i:0;a:5:{s:4:\"data\";s:17:\"Lorelle VanFossen\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}}}}i:38;a:6:{s:4:\"data\";s:13:\"\n \n \n \n \n \n \n\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";s:5:\"child\";a:2:{s:0:\"\";a:5:{s:5:\"title\";a:1:{i:0;a:5:{s:4:\"data\";s:74:\"WordPress.tv: Daniel Naber: Wie WordPress unsere Rechtschreibfehler findet\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"guid\";a:1:{i:0;a:5:{s:4:\"data\";s:28:\"http://wordpress.tv/?p=36348\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:4:\"link\";a:1:{i:0;a:5:{s:4:\"data\";s:91:\"http://wordpress.tv/2014/07/29/daniel-naber-wie-wordpress-unsere-rechtschreibfehler-findet/\";s:7:\"attribs\";a:0:{}s:8:\"xml_base\";s:0:\"\";s:17:\"xml_base_explicit\";b:0;s:8:\"xml_lang\";s:0:\"\";}}s:11:\"description\";a:1:{i:0;a:5:{s:4:\"data\";s:696:\"

Welcome to the fifth “Week in Review” on Post Status, where I hope to offer up some of the things you may have missed in the last week or so.

\n

Sass is coming to Underscores

\n

A long-awaited feature, the first pass at introducing Sass to the Underscores (_s) theme has been committed. This morning’s commit by Tammie Lister follows a number of much-discussed Github threads, and it looks promising. The Sassy version of Underscores is in its own branch, if you want to explore it further and get started with that version right away.

\n

I’ve been using my own forked version of Underscores for some time now, that includes Sass, and I’m happy to see this change. I look forward to comparing their version with my own and learning from it. Underscores has become one of the most popular WordPress themes to build custom websites from, and this is a great change.

\n

If you don’t think you’re ready for Sass, Josh Pollock has a nice post on Torque to help you out.

\n

Custom post type standards are underway

Furthermore, he started a Github repo for a community-based, unofficial standards document. This is exactly the type of discussion that I hoped would occur, and I encourage you all to get involved. If enough of us encourage standards for some common custom content types, we can make portability between WordPress themes even better, and that would be great.

\n

The first issue is to decide what post types to standardize, so go get involved.

\n

Standard site logo support for the customizer

\n

Also along the standardization theme, WordPress.com has introduced a feature for theme developers to create standard support for site logos, a feature that’s in almost any WordPress theme.

However, MailPoet was unsatisfied with how Sucuri handled the disclosure, and posted some lessons learned on their blog a couple of days ago. That post is worth reading on its own, but essentially they’re displeased at the rapidity of Sucuri’s actions from notification of the vulnerability to publishing the news on their blog. Sucuri says it was standard practice, and give a rundown in an open letter to MailPoet on their own blog.

\n

When your primary software product has something like this happen, your emotions definitely tick up a notch or three. I can see both sides of this story. In the end, it’s important that the fix gets in and site owners and hosts get notified so they can get their sites fixed. I don’t know who is more correct in this story (I haven’t given it enough thought, honestly), but I think most things are better settled in a different venue than trading accusatory and pointed open letters — something both parties are guilty of here.

\n

Starting a WordPress blog?

\n

Oli Dale has some really interesting insight where he raises the hypothetical, “If I were to start a blog about WordPress today.” He highlights how he thinks some genres (like WordPress news) are well covered, but that he sees a great deal of potential in more niche markets.

\n

Definitely read Oli’s advice if you’re looking to start a blog. Also keep in mind, really there is so much opportunity, no matter what you see out there today; just do it better than anyone else and you can succeed. (Notable on this topic, WP Scoop just rebranded itself)

GravityView: display entries of Gravity Forms anywhere on your site

Zack Katz has released GravityView, a plugin that takes Gravity Forms submissions and lets you put them anywhere on your site. This plugin look really slick, and I see a lot of potential uses for it.

\n

Zack is the developer of the free Gravity Forms Directory plugin, and GravityView is a different plugin, but expanded version of that. Zack talks about GravityView and his thinking behind it on the latest Apply Filters podcast, which he recorded right before he released the plugin.

Meet me in New York

\n

I’m really excited to attend WordCamp New York City Friday through Sunday. If you’re there, I’d love to meet. The lineup of attendees and speakers is insane. I’ll also be doing some hallway interviews, so Post Status readers will hopefully enjoy the results of those. I’ll probably be singing Alicia Keys to myself for the next few days, so you can have that mental image for free.

\n

\n

It’s not quite midnight on Monday in Alabama, as I wrap this up. So while the week in review is a bit late this week, I hope you still enjoyed it and learned something new. If you did, I of course appreciate if you’ll share it with your social network of choice.

This Friday at 3PM Eastern, we’ll be joined by three individuals to discuss the topic of crowdfunding. Crowdfunding is defined as “the practice of funding a project or venture by raising many small amounts of money from a large number of people, typically via the Internet.” While some projects fail, others are exceedingly successful.

\n

Our guests will share their experience, lessons learned, and what they would have done differently. We’ll also discuss the impact of crowdfunding open source software development.

\n

\n

Scott Kingsley Clark – Clark used Kickstarter to successfully raise enough funds to develop Pods 2.0 and the community website. Although he only asked for $1,500, he ended up with nearly $4,200.

A WordPress community initiative is underway to standardize content types used by plugin developers. Justin Tadlock is spearheading an initiative to create WordPress community-curated standards for common post types, taxonomies, and metadata.

\n

WordPress developers are invited to join the discussion taking place in the Content Type Standards repo on Github where Tadlock outlined the objective: “The purpose of this repository is to create an open set of standards for the WordPress developer community on how to name custom post types as well as related taxonomies and metadata.” This would include common post types, such as testimonials, portfolios, recipes, FAQ, events, and products.

\n

\n

Tadlock, who has historically been a vocal advocate of data portability, is hoping that the standards will enable users to painlessly switch between plugins that compete in the same space, without losing any data. Standards will also make it easier for developers to build extensions in such a way that they can be more widely adopted by theme developers. He identifies a few benefits that both users and developers would enjoy as a result of content type standards:

\n

\n

Less worry about what to name things when creating a plugin.

\n

We can have competing plugins in the same space.

\n

Cool things like add-on plugins become easier to build.

\n

Users can switch between similar plugins to find the one they like best.

\n

It would be easier to push for things in core WP like custom Dashicons.

\n

Theme authors could potentially support multiple plugins.

\n

\n

The project will first be focused on establishing a set of standards for plugin authors to follow, based on the core WordPress methods. Tadlock also suggests a secondary goal of creating a few PHP scripts for developers to copy/paste for registering a post type or taxonomy that make use of the new standards.

\n

The Need for a Community-Curated Initiative

\n

Brian Krogsgard recently published an article calling for Jetpack and WordPress.com to lead the way toward standardizing custom post types. While Jetpack and WordPress.com are in a good position to lead the way on this, there are many community developers outside of Automattic who have valuable input to offer on the creation of a truly open set of standards.

People are still using their own, separate code rather than adopting existing solutions, preferring a solution built in-house instead of joining together with others. That’s the reason we don’t have standards. It really has little to do with post type naming conventions.

\n

The idea behind the community-curated standards is to help WordPress developers work together without the need to reinvent the wheel every time with their own solutions. Instead of closing off products with naming conventions that won’t be able to transfer users’ data, Tadlock encourages developers to work on creating plugins that become standards in their own right.

\n

Standards are created after we’ve made them and they’ve been adopted by enough people. In other words, we create standards by building good plugins, getting users to install them, and having theme authors integrate with them.

\n

The Content Type Standards project is a community initiative that puts users first and helps developers make products that can be more widely used. The first order of business is to establish the post types to standardize so that contributors can then address the naming standards, taxonomies, and metadata for each. If you build products that utilize custom post types, make sure to get in on the discussion happening on GitHub.

Utilizing SSH keys in conjunction with the servers you connect to is a great and highly recommended security practice. SSH stands for “Secure Shell” and enabling SSH for a server creates a secure channel between you (via the command line) and your server.

\n

SSH keys help the server validate and authenticate who you are. SSH servers can even be setup to require a known valid SSH key in order for the server to acknowledge you to begin the login process.

\n

Using SSH from a Linux or Mac system is straightforward. You may not realize it but your system will automagically generate an SSH key for you the first time you use SSH if you do not have one already. This key will then be sent with all subsequent request to that server and all other servers. This is a great start, however it is possible to maintain multiple SSH keys on your system.

\n

If the one SSH key allows you to get into all your systems why would you want additional keys? Simple, extra security.

\n

Having a unique key per system you are logging into will create additional security by only allowing that key to be used on that system and no other. If your account somehow gets compromised and the key to the server taken you do not have to worry about all the systems you have logged into with that key and remember to go secure them. You simply delete the key for that system and generate another.

\n

Managing multiple keys is easy. Let me show you how you can accomplish this on your own system.

\n

This tutorial assumes you have basic knowledge of the command line. It was originally written as part of a series of CLI (command line interface) cheat sheets, and I’m reposting it here so that a broader audience can take advantage of SSH for server management. The CLI cheat sheet has other excellent resources I recommend you check out as well.

\n

Where to find SSH files

\n

All the SSH files live in a hidden folder .ssh in your user directory. If your system is using the generic key file this folder may not exist. You can safely create this folder yourself. We will be working out of it for the remainder of this tutorial.

\n

We will also be working from the terminal for the rest of this process.

\n

Open up your terminal and get setup.

\n

cd ~/.ssh

\n

If you get an error that the directory does not exist create it with:

\n

mkdir ~/.ssh

\n

Lets make some keys!

\n

\n

For this example we will setup keys for two servers: abc.com and xyz.com.

\n

SSH includes a simple utility for creating SSH keys called `ssh-keygen. The following is an example of what creating a key would look like.

Type ls into the terminal and you should now see two new key files that have been created for abc.com. Repeat the process with xyz.com.

\n

Passphrases are recommended but not strictly necessary. If you are creating a passwordless login you can hit enter to leave it blank. Later on when we get into the configuration file there are additional login options you can set.

\n

Since you are now a pro at creating SSH keys I suggest you also create a generic key. This key will be used on any systems you login to where you do not have a unique key created.

\n

Setup the configuration file

\n

Likely there will not be a configuration file in your .ssh directory. This is normal. You will create it in this step.

\n

To utilize your shiny new SSH key with a specific system you will need to create a new entry into the ~/.ssh/config file related to that host. You can use either the hostname or the IP. One key can have multiple entries, so if you have multiple hostnames for one system, or want to use both the hostname and IP to login simply create an additional entry in the config file. The * wildcard can also be used.

\n

To get started open the ~/.ssh/config file in your editor of choice and add the following lines:

That is it! You will now be utilizing a different key for each of those hosts.

\n

Setup the generic key with

\n

Host *\n IdentityFile ~/.ssh/id_rsa.generic\n

\n

Configuration options

\n

There are many configuration options available to you in this file. Lets break down a few here.

\n

Host\nThe Host option is a bit tricky. Host is for the name you use on the command line with the ssh command. This does not have to be a real machine but can be an alias. When used as an alias you need to supply the HostName option as well. Here are a couple examples to help make this more clear.

\n

Host lobaugh.net\n ….\n

\n

On the command line you would use ssh yahoo.com to connect to the machine still.

\n

Host ben\n HostName lobaugh.net\n ….\n

\n

In this example you would call ssh ben and still be connected to the lobaugh.net server.

\n

User\nAllows you to set the username that is supplied to the connection by default. This can be different than the currently logged in user that is supplied by the system if one is not supplied. This setting can be overwritten at run time on the command line.

\n

Host lobaugh.net\n User ben\n

\n

ServerAliveInterval\nSome servers have a timeout setting that will automatically disconnect a user if they do not perform an action for a specified period of time. This is great for security, however some hosts are a bit aggressive with disconnects and will bump you rather quickly (looking at you MediaTemple). This option tells your client to send keep alive packets to the server so you do not get disconnected too quickly. This setting is in seconds.

\n

Host lobaugh.net\n ServerAliveInterval 60\n

\n

IdentityFile\nThis is the key file we created in the beginning that should be used for the connection.

\n

Host lobaugh.net\n IdentityFile ~/.ssh/id_rsa.lobaugh.net\n

\n

Port

\n

Allows changing the port number the connection uses for non-standard ports.

Setup the server side of things

\n

Now that we have things on the client side setup we need to let the server know what is happening. This will ensure that the server knows who we are. This is as simple as ensuring the public key is present in the authorized_keys file.

\n

We will use a couple “magic” ssh commands that run remote commands on the server for us.

\n

First we need to ensure the .ssh directory exists on the server or the transfer of the key will fail.

The JSON REST API plugin for WordPress released a security update over the weekend. Version 1.1.1 includes a fix for a vulnerability wherein the JSONP support built-in to the API could be used to serve up arbitrary Flash SWF files. This technique has been known to be used in the past to abuse JSON endpoints to allow Flash files to bypass browser cross-origin domain policies.

\n

WordPress core already has CSRF protection, but the WP REST API is oftentimes used in combination with other software which may not have the same protections. You can use a filter to disable JSONP support:

\n

add_filter( \'json_jsonp_enabled\', \'__return_false\' );

\n

WP API project lead Ryan McCue credits Ian Dunn in the release announcement for responsibly disclosing the vulnerability to the team.

\n

The WP REST API project is now available on HackerOne, with a bounty for hackers who discover remote code execution exploits, SQL injection, privilege escalation, and other security issues. The WP-API plugin is listed as a high priority along with the OAuth 1.0a server plugin, which provides authentication for the API.

\n

The vulnerability fixed in version 1.1.1 of the plugin was classified as a minor security issue, according to McCue, and no sites have reported any exploits. He recommends that anyone still using version 1.1 of the plugin to update as soon as possible.

WordPress 4.0 Beta 2 is now available for download and testing. This is software still in development, so we don’t recommend that you run it on a production site. To get the beta, try the WordPress Beta Tester plugin (you’ll want “bleeding edge nightlies”). Or you can download the beta here (zip). For more of what’s new in version 4.0, check out […]