Blog

Developers Guide: Upgrading to Pods 2.0

Should you be worried about the upgrade from 1.9.x to 2.0? The short answer is no. If you did not modify core, utilized as much within core as possible, and follow this guide to cover any grey area that you may be effected by — you should find your Pods 1.9.x to 2.0 upgrade easy as pie.

Automatic Upgrade

  • Pods 2.0 will ship with an upgrade script which will automatically upgrade you to Pods 2.0 from your previous version. To run this script, simply upgrade (or upload/replace) your Pods plugin files to the Pods 2.0 plugin files. On your first WP-Admin load, you will be taken to the upgrade screen which will provide you progress as your upgrade runs. The admin screen will tell you when it’s done. For large sites, please note that this may take a bit of time and / or may require you to refresh your page to continue the upgrade due to certain limits set by some server configurations. If you are unable to get to your WP-Admin area, simply go directly to the yoursite.com/wp-admin/admin.php?page=pods-admin&action=upgrade URL while logged in as an admin.
  • If your upgrade does not complete, you experience errors, or you are unable to perform the upgrade yourself, please do not hesitate to contact any of the developers listed in our Developer Directory or Contact us directly for paid support.

Uh oh! Something happened!!

  • Is there a way to get your site working again if things don’t go as planned? Yes! We’ve kept your old Pods-related tables backed up so you can simply deactivate Pods 2.0 and activate Pods 1.9.x to get everything working like it was prior to the upgrade. That’s it — just run the 1.9.x version of Pods and there’s nothing for you to change!

Function / Parameter Changes

  • We have made a number of improvements in Pods 2.0 and have done our best to future-proof many of the growing functions in order to bring you more functionality. Here is a list of classes / functions / parameters that have changed in 2.0 that *should* still work as they were but are subject to be removed in a future major release, which likely would be Pods 2.5+

    Classes

    • Pod class renamed to Pods and is initiated (file included and class setup) through the new $my_pod = pods($pod, $id_or_slug) function
    • PodAPI class renamed to PodsAPI and is initiated (file included and class setup) through the new $api = pods_api() function
    • PodCache class renamed to PodsClass and global $cache renamed to $pods_cache
    • The Pods UI plugin has been largely re-factored, added to Pods 2.0 within the new PodsUI class, and is initiated (file included and class setup) through the $pods_ui = pods_ui($obj) function

    Functions

    Old Name » New Name
    Pods :: get_field » Pods :: field
    Pods :: findRecords » Pods :: find
    Pods :: fetchRecord » Pods :: fetch_item
    Pods :: getTotalRows » Pods :: total_found
    Pods :: showTemplate » Pods :: template
    Pods :: getPagination » Pods :: pagination
    Pods :: getFilters » Pods :: filters
    Pods :: pod_helper » Pods :: helper
    Pods :: resetPointer » Pods :: reset
    Pods :: get_pod_id » Pods :: field(‘id’)
    Pods :: getRecordById » Pods :: fetch_item($id)
    pods_url_variable » pods_var
    pod_query » pods_query

Large amounts of Data and/or Relational Data

  • The upgrade script must rebuild your relationships to optimize your site’s performance and to support the increased functionality of Pods 2.0 — We recommend you contact any of the developers listed in our Developer Directory or Contact us directly for paid support to help you in your migration process.