Gravity Forms 3.0 has arrived! We’ve spent weeks testing 3.0 and with the release of Gravity PDF 6.16.0 marked it officially compatible with this major Gravity Forms milestone. 🥳 Plus, on the back of the licensing server swap completed in 6.15.0, we’ve continued to improve how your site handles Gravity PDF product updates.
Gravity Forms 3.0
The international phone field is a fantastic addition to Gravity Forms. It’s simple to configure, easy to use, and Gravity PDF 6.16.0 renders this new format in your PDFs – including the country and dial code shown in front of the number (if enabled).
For developers, the new $form_data['phone'] key lets you easily extract and display specific parts of the international number in your custom template.
License and Updates
Performance
This release improves the overall performance of update checks for all Gravity PDF products, on both standard and Multisite WordPress installs. We’ve reduced the number of requests by combining the individual product update checks, stopped repeated requests when the licensing server is temporarily unavailable, and added better caching for Multisite.
WordPress Admin
The License admin page got a few quality-of-life updates, too. It gracefully handles connectivity issues with the license server, and will activate or deactivate all installed add-ons that your key supports. If Gravity PDF is network-activated on Multisite, managing licenses is restricted to the primary site admin area.
Register Your License in Code
For our developer friends, you can set your license key(s) in the wp-config.php file using the new GPDF_LICENSE_KEY constant:
define( 'GPDF_LICENSE_KEY', 'jZ9FQiX9xHoKaRgV4ZmqniqnrDT6PesD' );
A valid key will auto-activate any installed add-ons / extensions for Gravity PDF, and give you access to plugin updates. If you purchased products individually and have multiple license keys, you can use an array instead:
define( 'GPDF_LICENSE_KEY', [
'gravity-pdf-core-booster' => 'DFoDzNAKuFjvWtDTuLBEAJJnjcG9j2iW',
'gravity-pdf-previewer' => 'apvfZLp3udnWif8MDYg9VN4TnbrPLLtb',
] );
The plugin slug in the array key and a valid license as the value. There’s also the gfpdf_addon_hardcoded_license_key filter if you need to programmatically set the license key.
Developers: Get a PDF's Filename
We added a public API to compute the filename of a PDF document. It’s always been simple to get the raw filename from the PDF settings, but invalid characters hadn’t been removed yet, and merge tags still needed processing. Now it’s as simple as:
$filename = \GPDFAPI::get_pdf_filename( 25, '56c14c955d989' );
Read the GPDFAPI::get_pdf_filename() API documentation for more details.
How to Update Gravity PDF
You can update automatically using WordPress one-click update feature, or download the latest version on GravityPDF.com and manually install.
If you have any questions or need assistance with updating, our friendly support team is happy to help.
Changelog
Feature
- 🎉 Gravity Forms 3.0 compatibility
- 🎉 Support the Gravity Forms 3.0 International (formatted) phone number format, displayed with the country and dial code in front of the number
- 🎉 Auto-activate/deactivate license key for installed Gravity PDF extensions when saving an Access Pass
- 🎉 Support for setting a license key in code using the PHP constant
GPDF_LICENSE_KEY
Security
- 🔒 Redact sensitive information from log files
- 🔒 Harden update and license checks
Housekeeping
- 🧹 Bulk license + update check for all Gravity PDF products
- 🧹 When network activated on Multisite, license checks are only completed by the primary site
- 🧹 When network activated on Multisite, the license admin page is hidden when not the primary site
- 🧹 When not network activated on Multisite, share the update cache across the network for an active license key
- 🧹 When the primary site is not activated on Multisite, display upgrade notices in the network admin on a best-effort basis
- 🧹 Turn autoloading off for the update cache data
- 🧹 Run an upgrade routine to remove the old update cache and cron
- 🧹 Delete all licensing data when running the uninstaller
- 🧹 Update PHP and JavaScript dependencies
Bug Fixes
- 🐞 Show an error message when the license deactivation request fails with a server or authentication error
- 🐞 Ignore repeat clicks of the license Deactivate button while a request is in progress
- 🐞 Clearing a license key from the settings now updates the license status straight away
- 🐞 Delete all cached update information when a license key is deactivated/cleared from the settings page, or is rejected by the licensing server
- 🐞 Fix PHP fatal error when doing an update check and the licensing server is unavailable
- 🐞 Stop repeated update requests if the licensing server returns an empty response
Developer
- 🧑💻 Add
GPDFAPI::get_pdf_filename( $entry_id, $pdf_id, $include_extension )to get the filename of a PDF - 🧑💻 Add
gfpdf_addon_hardcoded_license_keyfilter to override theGPDF_LICENSE_KEYconstant - 🧑💻 Add
gfpdf_logging_redact_keysfilter to redact additional keys from the Gravity PDF logs - 🧑💻 Replace
edd_sl_*hooks withgpdf_sl_*hooks - 🧑💻 Add
gfpdf_addon_post_license_activationandgfpdf_addon_post_license_deactivationactions - 🧑💻 Deprecate
Helper_Abstract_Addon::plugin_updater(),Helper_Abstract_Addon::schedule_license_check(), andModel_Settings::deactivate_license_key() - 🧑💻 Add
$form_data['phone']which includes the country, dial code, national, formatted, and E.164 values of an International (formatted) phone number