Important Changes to VIP Shared Plugins

We’re excited to announce some changes to WordPress.com VIP that will make updating plugins even more efficient. To do this, we are introducing a versioning system for plugins, creating a new category of Reviewed Plugins, and deprecating a number of plugins from the Shared Plugins repository.

For VIP Go customers, these updates will not affect you. 

How will plugin versioning work?

The Shared Plugin repository is collection of plugins that are reviewed and maintained by the WordPress.com VIP team. We’re introducing versioning to help expedite the updating process for these plugins.

For Shared Plugins, we have introduced a third parameter to wpcom_vip_load_plugin, which allows you to specify the version you wish to load.

wpcom_vip_load_plugin( 'zoninator', 'plugins', '0.6' );

Note that the version parameter replaces the ‘release candidate’ parameter but the function maintains backwards compatibility so using true to load a release candidate will still work.

We will maintain two versions of each shared plugin at any one time, allowing you to upgrade to new versions at your own pace. We very much recommend you always use the latest available version, which you can find by looking in the shared plugins repository itself.

When a new plugin is released, the older version will be deprecated and eventually removed. We will always communicate specific timelines when this happens, to help you prepare and migrate.

What are the new Reviewed Plugins?

Reviewed Plugins expand the number of plugins approved and recommended by the VIP team. Every plugin reviewed by the VIP team will be added to this list. If you’d like to use a plugin on this list, simply commit the plugin to your theme in a single commit, letting us know in the message that it’s a reviewed plugin. We will review and deploy. Please note that we do not maintain these plugins, so your team will be responsible for updates.

If you’d like to use a newer plugin than what’s on the list, please let us know via tickets, and we’ll work quickly to add it to the list.

What plugins are being deprecated?

While these plugins are still recommended by our team, we will no longer be maintaining them in the shared plugins repository. If you wish to continue using this plugin, please work with us to clone the plugin into your theme as soon as possible. These plugins will now be listed in our Reviewed Plugins list.

  • advanced-excerpt
  • ajax-comment-loading
  • ajax-comment-preview
  • angellist
  • blimply
  • breadcrumb-navxt-39
  • category-posts-widget
  • column-shortcodes
  • comment-probation
  • daylife
  • disable-comments-query
  • disqus
  • dynamic-content-gallery
  • easy-custom-fields
  • ecwid
  • editorial-calendar
  • expiring-posts
  • external-links-new-window
  • external-permalinks-redux
  • facebook-simple-translation
  • feedwordpress
  • findthebest
  • five-min-video-suggest
  • flag-comments
  • formategory
  • gallery-style-cleanup
  • get-the-image
  • google-calendar-events
  • gumroad
  • history-bar
  • ice
  • image-metadata-cruncher
  • internacional
  • json-feed
  • kapost-byline
  • kimili-flash-embed
  • lift-search
  • lightbox-plus
  • localtime
  • mce-table-buttons
  • most-commented
  • nbcs-advanced-blacklist
  • nbcs-moderation-queue-alerts
  • ndn-video-match
  • objects-to-objects
  • optimizely
  • options-importer
  • post-forking
  • post-revision-workflow
  • postrelease-vip
  • publishing-checklist
  • pushup
  • roost
  • search-excerpt
  • sem-frame-buster
  • seo-auto-linker
  • seo-friendly-images-mod
  • share-this-classic-wpcom
  • share-this-wpcom
  • shopify-store
  • shortcode-ui
  • simple-page-ordering
  • simply-show-ids
  • speed-bumps
  • sticky-custom-post-types
  • stipple
  • subheading
  • table-of-contents
  • taxonomy-images
  • term-management-tools
  • the-attached-image
  • tidal
  • tw-print
  • usatsi_gallery
  • view-all-posts-pages
  • voce-settings-api
  • wordtwit-1.3-mod
  • wp-discourse
  • wp-frontend-uploader
  • wp-google-analytics
  • wp-help
  • wp-page-numbers
  • wp-pagenavi
  • wp-paginate
  • wp-seo
  • zemanta

Ok, so remind me what I need to do?

  • Going forward, you will need to specify a version when loading a shared plugin, by adding a third parameter to the `wpcom_vip_load_plugin` function.
  • If you are using a plugin that is being deprecated, please know that we will no longer be updating or maintaining the plugin. You should clone the plugin into your theme as soon as possible. When you’re ready, please open a ticket with us and we will clone the plugin for you. You will then need to switch to loading the plugin from your theme by updating functions.php.
  • If you are planning on submitting a new plugin for review, check the Reviewed Plugins list. If it’s already reviewed, simply commit the plugin to your theme, letting us know in the message that it’s a reviewed plugin. If the plugin is not on the list, you can submit to us for review.

We hope this will make future plugin updates more efficient for everyone. For more, read our handy Plugins Documentation. And as always, if you have any questions please open a support ticket.

13 thoughts on “Important Changes to VIP Shared Plugins

  1. The third parameter is not currently required, no, so that all the current calls to `wpcom_vip_load_plugin()` don’t break 🙂

    However, at some point in the future all plugins will be versioned, so *not* including the third parameter will fail to load a plugin.

    For example, at the moment to load Brightcove Video Connect, which we have at v1.1.3 you would use:

    `wpcom_vip_load_plugin( ‘brightcove-video-connect’ );`

    If you were to try loading that specific version, like this, it would fail:

    `wpcom_vip_load_plugin( ‘brightcove-video-connect’, ‘plugins’, ‘1.1.3’ );`

    In simple terms, all `wpcom_vip_load_plugin()` does it concatenate the 1st (plugin) and 3rd (version) parameters, and look for that folder in the shared plugins repo. E.g. that last example would look for:

    `vip/plugins/brightcove-video-connect-1.1.3/brightcove-video-connect.php’

    That plugin file, as you can see for yourself in the repo, doesn’t exist.

    If, for example, we were to review an update to that plugin, such as v1.2.1, you could then use this to load the new version:

    `wpcom_vip_load_plugin( ‘brightcove-video-connect’, ‘plugins’, ‘1.2.1’ );`

    You’d then be enjoying all the benefits of upgrading, but having done so by upgrading at your own pace.

  2. Is there a way to always automatically grab the latest release rather than having to update the `wpcom_vip_load_plugin` every time a new plugin version is released?

    • There isn’t, Bryan. We’ve done this deliberately so that when we release a plugin we don’t accidentally cause breakages or unexpected consequences.

      Rather, this gives you the opportunity to test locally and in staging environments so that you can be sure any changes in the plugin are fine (or to take advantage of new features) and upgrade when it’s convenient and comfortable for you.

  3. Is there a list of approved plugins available? the link to reviewed plugins seems to only list plugins that are to be deprecated – where can we get the version number of other plugins?

    Also, is there a notification system that will notify us of updates to a plugin? Thanks!

    • Hi Bryan – the reviewed plugins list does mainly consist only of the deprecated plugins at the moment but you can expect this to grow. Each time we’re asked to review a plugin it’ll be added to this list when it passes review.

      As for updates, there’s no notifications of updates to the reviewed plugins list. Updates to shared plugins will be announced on this blog.

        • For reviewed plugins, the last reviewed version is listed alongside the plugin. For shared plugins, it’s best to look in the shared plugins repo itself where you’ll see the versions appended to the plugin directory (e.g. `facebook-instant-articles-2.11`).

          Those might not be the latest *released* version of that plugin – we only review when asked to. So we may have reviewed v1.1 but the latest released version is v1.5. That’s where you can ask us to review the upgrade and we’ll update the reviewed list. Hope that’s clear!

          • Thanks Phil – greatly appreciate the help! I’m still a bit confused on the required versioning on the shared plugins.

            For instance, if I look at the ‘cache-nav-menus’ plugin: in the SVN repo for the plugins, I do not see a version attached in the folder or in the plugin itself (plugin is a single file). In these cases, what are we supposed to use for that third parameter that defines the plugins version?

            As far as the reviews/upgrades – just to be clear, VIP clients will need to monitor plugins and notify you of a plugin upgrade and then you will review it at that point?

          • For those existing shared plugins, you can simply omit the version parameter like so:

            wpcom_vip_load_plugin( 'cache-nav-menus' );

            We don’t actively monitor the plugins we review for new versions, no, so if there’s a new feature or a bugfix you want to take advantage of then asking for review in a ticket is the best thing to do.

  4. Thanks again Phil – I think I may have misunderstood from the start, is the version number not a requirement on shared plugins then?

    • It’s not a hard requirement at the moment as such, no. Any plugins committed before this change came in are unversioned. Any plugins released since this change require a version to be specified. If you look at the shared plugins repo you’ll see which ones those are because they have version numbers appended to the folder name 🙂

Comments are closed.