Description
WP Fusion Lite synchronizes your WordPress users with leading CRMs and marketing automation systems, keeps user profiles in sync with CRM contact records, and lets you protect site content based on CRM tags.
Features
- Automatically create new contacts in your CRM when users register in WordPress
- Restrict access to site content using tags and lists in your CRM
- Synchronize any WordPress user data with custom fields in your CRM
- Apply tags when users register
- Import contacts from your CRM as new WordPress users and generate passwords for them
- Export WordPress users to your CRM as contact records
- Track visitor activity using your CRM’s tracking scripts (with supported CRMs)
WP Fusion is a critical tool in our toolkit for our clients, and we VERY strongly encourage our clients to use WP Fusion if they have any kind of CRM. The software is top notch, and the support team is fast and friendly. Nothing but love for WP Fusion from my team here at House Trevethan.
Allen Trevethan – House Trevethan
Lite Version
This is a free version of WP Fusion. WP Fusion Lite synchronizes your registered WordPress users with your connected CRM, including their name and email address.
It does not apply tags based on purchases or course activity, sync form entries, sync customers, or detect any data generated by other plugins.
For integration with WooCommerce, LearnDash, Gravity Forms, Elementor and over 100 other popular WordPress plugins, check out one of our paid licenses.
Benefits
-
? Replace Zapier, Integromat, and other integration tools. WP Fusion gives you a direct data sync between your site and your CRM, with no delays or limits.
-
?? Create easy to manage membership sites with drip-released content using timers and logic in your CRM.
-
?? Personalize your site by displaying data from CRM contact records, and showing / hiding content based on a user’s CRM tags or lists.
WP Fusion allows us to provide tailored customer experiences in WordPress that wow every time.
Hundreds of plugins that used to be one size fits all, can now perform differently for each Ontraport contact. For example, a low scoring Ontraport contact can be presented with a winback customer journey in WordPress.
This has allowed our clients to increase customer engagement and retention. It’s the only solution that should be considered for any WordPress integration.
Josh Schleifer – Triple Canopy
Docs and Tutorials
- ?? Installation Guide
- ?? Controlling access to content with CRM tags
- ?? Shortcodes
- ?? Displaying CRM data in WordPress
- ?? Sync WordPress users with CRM contact records
- ?? Import users from your CRM and generate passwords
- ?? Export users and metadata to your CRM
- ?? Sync Google Analytics and other leadsource variables with your CRM
- ??? Track user activity using tags
- ?? Auto login links
WP Fusion builds a critical bridge between our WooCommerce powered ecommerce site and LifterLMS powered training site to our CRM ActiveCampaign. It was easy to set up. The technical support is above and beyond anything I’ve ever seen. What it does is clearly intelligently designed and well built.
Chris Badgett – LifterLMS
Supported CRMs and marketing automation platforms
- ActiveCampaign
- AgileCRM
- Autopilot
- Autonami
- Bento
- BirdSend
- Capsule
- Constant Contact
- ConvertKit
- Copper
- Customerly
- Customer.io
- Drift
- Drip
- EmailOctopus
- Encharge
- Engage
- EngageBay
- Flexie
- FluentCRM (same site or REST API)
- GetResponse
- Gist
- Groundhogg (same site or REST API)
- Growmatik
- HighLevel
- HubSpot
- Infusionsoft
- Intercom
- Jetpack CRM
- Kartra
- Klaviyo
- Klick-Tipp
- Loopify
- MailChimp
- MailEngine
- MailerLite
- Mailjet
- MailPoet
- Maropost
- Mautic
- Microsoft Dynamics 365
- MooSend
- NationBuilder
- Omnisend
- Ontraport
- Ortto
- Pipedrive
- Platform.ly
- PulseTechnologyCRM
- Quentn
- Salesflare
- Salesforce
- SendFox
- SendinBlue
- Sendlane
- Tubular
- UserEngage
- WP ERP
- Zoho
For more info on CRM compatibility, check out the compatibility table.
WP Fusion is one of my secret weapons for getting WordPress to keep our member’s data synced with our CRM. This makes everything work so much better when you don’t have to worry about your members having issues logging into the member’s area.
If you have or are considering having a membership website using WordPress this plugin is a must-have. It will save you hours of time and frustration.
Greg Russell – SuccessTeam Marketing
Screenshots
Blocks
This plugin provides 3 blocks.
- WP Fusion
- Unsecure
- Inner
Installation
Upload and activate the plugin, then go to Settings >> WP Fusion. Select your desired CRM, enter your API credentials and click “Connect” to verify the connection.
For CRM-specific setup information, see our Installation Guide.
FAQ
-
Who is it for?
-
WP Fusion is built for anyone using a CRM or marketing automation platform, and running their website with WordPress.
CRMs empower businesses to track leads, send email broadcasts, manage contact data, track sales, delegate client relationships between employees, and more.
WordPress handles the public facing side of your business: your sales pages, ecommerce platform, support forums, photos and videos, and anything else you want the world to see.
But your CRM and WordPress don’t talk to each other.
This is where WP Fusion comes in.
WP Fusion acts as a bridge between your WordPress data and CRM data— it allows you to use data from WordPress to power your marketing campaigns, and data from your CRM to personalize the customer experience in WordPress.
-
How is it different from Zapier?
-
While WP Fusion and Zapier are both integration tools, they work quite differently.
Zapier is a SaaS (Software as a Service) solution that acts as a middleman between your site and your CRM (as well as many other platforms).
When something is updated in WordPress, it is synced to Zapier’s website, and then Zapier syncs the data on to your desired platform. Depending on your plan there is a delay before the data is synced, and/or limit on how many “tasks” you can run each month.
WP Fusion connects your site directly to your CRM or marketing automation platform over the API (nothing goes through our website). Because of this the sync of data is instant, secure, and there are no monthly limits.
In addition to syncing data with your CRM, WP Fusion also includes many options for protecting your WordPress content based on CRM tags, and triggering changes in membership level or course enrollments based on CRM automations. This generally isn’t possible with Zapier because Zapier is configured via zapier.com, not inside your WordPress dashboard.
-
Why are your version numbers so funny?
-
WP Fusion Lite is a copy of the Pro WP Fusion plugin, with support for third-party plugins removed. Each time we release a Lite update, it brings it up to date with the latest version of the Pro plugin. For the full details see the changelog on our site.
-
Can I disable the upgrade nags?
-
WP Fusion Lite has a few banners on the settings pages with additional info about the features available in the Pro version.
If you’d prefer not to see these you can disable them with the filter:
add_filter( 'wp_fusion_hide_upgrade_nags', '__return_true' );
-
How can I report security bugs?
-
You can report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team help validate, triage and handle any security vulnerabilities. Report a security vulnerability.
-
Do you have more FAQs?
-
Of course, see our Frequently Asked Questions.
Reviews
Contributors & Developers
“WP Fusion Lite – Marketing Automation and CRM Integration for WordPress” is open source software. The following people have contributed to this plugin.
Contributors“WP Fusion Lite – Marketing Automation and CRM Integration for WordPress” has been translated into 1 locale. Thank you to the translators for their contributions.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
3.44.8 – 9/24/2024
- Improved – Numeric states or regions will no longer be synced to Infusionsoft/Keap to prevent an API error
- Fixed import tool with Groundhogg (REST API) not loading more than 100 contacts
3.44.7 – 9/23/2024
- Added support (via code snippet) for syncing lead source data when updating a contact, instead of just when adding a new contact
- Improved – New auto-login sessions will now record the current URL to the logs
- Improved – Added links to CRM-specific setup documentation to the CRM configuration settings section
- Improved – Added note to HighLevel setup about logging in to the HighLevel app before attempting the connection
- Improved – Moved Mautic tracking script from footer to head to fix some console errors when playing mediaelement.js videos
- Improved – Updated the list tags pagination API call with Infusionsoft/Keap to use the new V2 compliant specification
- Developers: Added
wpf_api_{$method_name}
filter to allow bypassing / overriding API calls in the CRM classes - Fixed
user_meta
shortcode not properly converting dates stores as timestamps - Fixed lockout redirect URLs saved without a trailing slash causing an infinite redirect when a lockout redirect is triggered
- Fixed the tags array API call with Infusionsoft/Keap not being reindexed before being sent, which would cause “Input could not be converted” errors in cases where invalid tags had been removed from the payload
3.44.6 – 9/16/2024
- Improved – With CRMs that support typing new tags into the tags dropdown, the placholder will update to say “(type to add new)” when the dropdown is open
- Improved – The legacy Infusionsoft/Keap module at
wp_fusion()->crm->app
is now lazy-loaded, so it will only be loaded when needed instead of on every page load - Fixed user role changes after a user’s initial registration not being synced to the CRM
3.44.5 – 9/10/2024
- Improved – The Infusionsoft/Keap integration will now convert all two-digit state abbreviations to uppercase
- Improved – With Infusionsoft/Keap, if a US state is supplied for an address, and the country code is not provided, the country code will automatically be set to USA
- Improved – With Infusionsoft/Keap, if a region code is provided for an address, and the country code is not provided, a notice will be recorded to the logs
- Fixed the
wp_fusion_init_crm
hook not changing the CRM name on the Setup tab (when white-labelling) - Fixed error in the HighLevel integration when removing tags from a deleted contact
3.44.4 – 9/3/2024
- Added a delay to batch operations with Klaviyo to avoid the 3 requests per second (60 per minute) API limit
- Improved – If you attempt to sync an invlalid country name or code with Infusionsoft/Keap, WP Fusion will remove the data from the API call to avoid an API error
- Improved – If you attempt to sync an invalid Owner ID with Infusionsoft/Keap, this will crash the API (error code 500). We’ve added a more descriptive error message to the log to indicate when this field is causing the error
- Improved – Extended the API timeout with Infusionsoft/Keap to 20 seconds
- Improved – If an API call to Infusionsoft/Keap fails with a 503 error (“service unavailable”), WP Fusion will now retry the API call after a 2 second delay
- Improved – WP Fusion will no longer apply timezone offsets to dates synced to Groundhogg (same site) that don’t have a time component
- Improved Salesforce error logging for failed access token refreshes
- Fixed tags applied in FluentCRM (same site) automations, which were triggered by WP Fusion applying a tag, not syncing back to WordPress
- Fixed the Nickname field not syncing with Infusionsoft/Keap
- Fixed PHP warning “Automatic conversion of false to array is deprecated” when the shutdown hook runs multiple times
3.44.3 – 8/26/2024
- Improved support for syncing country and region codes with Infusionsoft/Keap
- Improved – With the
user_meta
shortcode, input strings of 8 characters or less will no longer be treated as timestamps (allows for dates like 2024 or 20240101 to be formatted correctly as dates) - Improvements to the add_object() method in the CRM base class
- Improved logging when a user is synced to the CRM due to a role change
- Fixed errors syncing to Infusionsoft/Keap custom fields with special characters in the CRM field label (like, ?, !, etc)
- Fixed user registration actions running twice when using the Limit User Roles setting
- Fixed warning “Undefined variable $lists” in ActiveCampaign integration when creating a contact without any lists
- Fixed notice “Add to CRM was not checked, the user will not be synced to the CRM.” when adding users manually via the WP Admin
- Fixed user role changes on the admin user profile triggering a sync to the CRM even if the role field is not enabled for sync
- Developers: added functions
wpf_country_to_iso3166()
andwpf_state_to_iso3166()
to convert country and state codes to ISO 3166-1 alpha-3 and alpha-2 codes - Developers: added filter
wpf_country_to_iso3166
to allow overriding the default country to ISO 3166-1 alpha-3 code conversion - Developers:
wpf_is_field_active()
can now take an array of field IDs, it will return true if any of the fields are active
3.44.2 – 8/19/2024
- Added a text search field to the WP Fusion Logs page
- Improved API performance for applying and removing tags with Infusionsoft/Keap
- Improved – If an Infusionsoft/Keap API call is throttled due to too many requests, WP Fusion will now wait 2 seconds and try again
- Improved – The new Keap/Infusionsoft integration will now append to the existing Person Notes field when syncing notes, instead of replacing it
- Improved – With the new Infusionsoft/Keap integration, if a US state is specified for an address, and the country is not provided, the country code will be set to USA
- Improved – With the new Infusionsoft/Keap integration, if an invalid locale code is synced to the Language field, a notice will be logged and the field will be removed to avoid API errors
- Improved KlickTipp error handling
3.44.1.1 – 8/15/2024
- Added US state name to ISO 3166-2 code conversion for updating billing and shipping addresses with Infusionsoft / Keap
- Improved – Disabled syncing of the “Person Notes” field with Infusionsoft / Keap for existing contacts, since Keap now replaces the notes field when notes are synced, instead of appending to it
- Improved – Custom fields with Infusionsoft / Keap will now be sorted alphabetically in the WP Fusion field dropdowns
- Fixed “date” type fields (like Birthday) being synced to Infusionsoft / Keap as ISO8601 date-time data since 3.44.1, instead of the
Y-m-d
date format - Fixed date/time fields with Infusionsoft not being formatted into the WordPress date / time format when loaded
- Fixed “Creation of dynamic property” PHP warnings in older CRM integrations with PHP 8.2
3.44.1 – 8/12/2024
- Note: Infusionsoft/Keap have removed the standard “Password” and “Username” fields from the new API, due to security concerns. To avoid errors when syncing passwords and usernames, WP Fusion will log a notice when these fields are detected and remove them from the sync. If you need to sync usernames and passwords, please create new custom text fields to store the data.
- Improved Ontraport error handling for duplicate and not found contacts
- Improved – (Infusionsoft / Keap) Added ISO 3166-1 country name conversion for “United States” to “USA” (previously only matched “United States of America”)
- Fixed new Infusionsoft integration swapping the Billing and Shipping addresses
- Fixed new Infusionsoft integration not syncing dates in ISO8601 format
- Fixed new Infusionsoft integration not loading more than 10 available products
- Fixed error “PHP error: Uncaught TypeError: array_flip(): Argument #1 ($array) must be of type array” when syncing new custom fields with the new Infusionsoft REST API integration
- Fixed Groundhogg (same site) integration immediately loading custom fields that were added when creating a new contact
- Fixed date fields syncing to Groundhogg (REST API) as timestamps instead of dates
- Fixed tags that were removed in a FluentCRM automation (same site) that was triggered by WP Fusion applying a tag not triggering a sync back to the user’s tags in WordPress
- Developers:
add_contact()
will now return aWP_Error
if no fields are enabled for sync, instead offalse
- Developers: The WP Fusion logs are now sorted by log ID instead of timestamp, to avoid confusion when changing the site’s timezone
3.44.0.2 – 8/6/2024
- Fixed custom fields with spaces in the labels not migrating to the new Infusionsoft API field mapping
- Fixed “Unprocessable entity” errors when syncing custom fields with spaces in the label to Infusionsoft/Keap since 3.44.0
3.44.0.1 – 8/6/2024
- Fixed new Keap / Infusionsoft integration not loading more than 1000 each of tags or tag categories
- Fixed Keap / Infusionsoft integration not importing all contacts if no tag was specified for the import
3.44.0 – 8/5/2024
- Big update: WP Fusion has been updated to use the Infusionsoft REST API, and Service Account Keys for authentication. You will need to update your API credentials to ensure uninterrupted service
- Improved – wpf_get_iso8601_date() will now more forcefully use GMT for the time zone instead of the local time
- Improved – Added logging if the HubSpot token refresh failed to save
- Improved – wp_fusion()->settings->set() will now return false if the setting was not successfully saved
- Fixed “Assign Lists” setting with ActiveCampaign applying to all new contacts
- Fixed “Resubscribe unsubscribed subscribers when they are added to new groups” setting not working with MailerLite
- Fixed MailerLite group IDs not saving correctly in the CartFlows UI
- Fixed missing crm.schemas.deals.write scope in the HubSpot integration, which sometimes caused deal properties to not save
3.43.20 – 7/29/24
- Fixed fatal error on the post table list when no tags are available in the CRM
- Fixed – removed use of deprecated \MailPoet\Models\Subscriber when updating MailPoet subscribers
3.43.19 – 7/16/2024
- Improved – If a $source is synced for a Klaviyo subscriber, the same $source will be used when opt-ing the subscriber in to marketing
3.43.18 – 7/16/2024
- Improved – With Ontraport lead source tracking, the any enabled lead source fields will be synced to the corresponding Last Referrer fields when a contact is updated
- Fixed custom properties with Klaviyo being treated as system properties if they are prefixed with a dollar sign
- Removed the “Source” field from the Klaviyo integration (was not a system field)
- Developers: Added filter
wpf_background_process_memory_utilization_percentage
to allow customizing the memory utilization percentage for the background process
3.43.16 – 7/1/2024
- Added Source field for sync with Klaviyo
- Improved – New contacts added to Pipedrive will be automatically have their marketing status set to “subscribed”
3.43.15 – 6/24/2024
- Fixed fatal error when tracking events with FluentCRM and the event value is empty
- Fixed HTTP API logging option not showing with Customer.io
- Developers: added filter
wpf_user_has_tag
to allow filtering the tags passed in to an access check against a user - Developers: added property
wp_fusion()->access->filter_queries_priorty
to allow setting Advanced query filtering to a custom priority
3.43.14 – 6/17/2024
- Added support for lists with Constant Contact (can be configured for new user registrations in the General settings)
- Fixed the “Duplicate and Delete” feature for email address changes not working with Mailerlite
3.43.13 – 6/10/2024
- Fixed – Applying an empty tag to a FluentCRM contact (REST API) caused the contact to receive all the tags in the account
- Fixed – Spinning icon on the background worker status bar was spinning in the wrong direction
- Fixed error “Uncaught TypeError: date(): Argument #2 ($timestamp) must be of type ?int” when syncing some dates to Mautic with PHP 8.1
3.43.12 – 6/3/2024
- Added ability to apply lists via form integrations with FluentCRM (same site)
3.43.11 – 5/28/2024
- Added support for Encharge webhooks
- Added support for Drip site tracking (was removed at the end of 2022 but Drip has re-enabled it)
- Fixed – If Push All was enabled, adding a user from the admin could log a notice “no metadata found for user” if individual usermeta keys were updated before
user_register
was triggered - Fixed tags not being applied to new ActiveCampaign contacts when the “Account Name” field was enabled for sync
- Fixed tags showing up twice in the Select Tags dropdowns with Encharge
3.43.10 – 5/20/2024
- Added an Encharge CRM integration
- Fixed users loaded twice by the import tool (i.e. from two different contact records with a matching email) counting twice in the import history table
- Fixed HubSpot access token getting set to blank if there was a timeout or gateway error while connecting to HubSpot to refresh the token
- Fixed date fields in Groundhogg being synced in GMT, not local time, which sometimes caused dates with times to sync as the wrong day
- Fixed – If the user’s tags were saved to usermeta as a boolean
true
orfalse
instead of an array, this could cause that value to be returned fromwpf_get_tags()
, and cause errors witharray_intersect()
and other array functions - Developers: Updated Klaviyo API to the
2024-02-15
revision
3.43.9 – 5/13/2024
- Updated Constant Contact API token to use new API limits of 250,000 calls per day (was previously 10,000 calls per day) – Requires re-authorizing the connection via the prompt
3.43.8 – 5/6/2024
- Fixed errors pertaining to adding and removing subscribers from Klaviyo lists
- Fixed fatal error handling updating a contact in ActiveCampaign when a “Email address already exists in the system.” error is encountered while creating a contact
- Fixed – Log entries will now be saved using
gmdate()
instead ofdate()
to avoid timezone conversion shenanigans
3.43.7 – 4/29/2024
- Improved – If
wpf_get_contact_id()
is called with$force_update
, and there is an API error, the existing cached contact ID (if any) will be returned instead of false - Fixed infinite loop when using the “Refresh if access is denied” setting and the API call to look up the user’s contact ID fails
3.43.6.2 – 4/25/2024
- Fixed HighLevel tags not being converted to lowercase for the
remove_tags()
API call
3.43.6 – 4/23/2024
- Added support for resubscribing unsubscribed contacts with ActiveCampaign
- Improved HighLevel error handling
- Improved – If a
duplicate
error is returned from the ActiveCampaign API, the contact will be looked up again by email address - Fixed dynamic tags (“Create tag(s) from value”) not applying with guest registrations
- Fixed event tracking with Klaviyo
- Fixed HighLevel integration treating the error “The token does not have access to this location” as an expired access token and requiring a refresh
- Fixed errors not being logged when an invalid contact ID was used as an auto-login URL parameter
- Fixed Save Changes button in the setup not being clickable when using the Staging CRM
- Fixed Groundhogg integration syncing empty dates as 1/1/1970
- Developers: added function
wpf_get_iso8601_date()
3.43.5 – 4/15/2024
- Improved – The Bento webhook handler will now use the
email
field from the payload for lookups of existing users - Fixed notice
Deprecated: strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated
when other plugins called__()
without a text domain
3.43.4.1 – 4/9/2024
- Fixed fatal error calling methods that aren’t in the WPF_Staging class, while in staging mode (i.e.
Argument #1 ($callback) must be a valid callback, class WPF_Staging does not have a method "get_connection_id"
)
3.43.4 – 4/8/2024
- Added ability to link to individual entries in the activity logs
- Fixed fatal error
Argument #1 ($array) must be of type array, string given
in the admin post list table with PHP 8.2 when a required tag on a post was saved with invalid data
3.43.3 – 4/2/2024
- Added support for importing all contacts from the CRM via the import tool (rather than a specific segment), with selected platforms
- Improved – While in staging mode you can now resync the lists of available tags and fields from the CRM
- Improved – Added a warning indicator when an unknown tag (from a previous CRM) is saved to a Select Tag(s) dropdown
- Improved – If staging mode is enabled in wp-config.php, the Staging Mode checkbox will be disabled in the settings
- Fixed API calls before the
init
hook not getting logged with HTTP API logging - Fixed Account Name not syncing with ActiveCampaign since the switch to the v3 API in v3.41.36
- Fixed tags created by WP Fusion in FluentCRM (same site) using the tag label as the slug (instead of the sanitized title)
- Developers –
wp_fusion()->user->apply_tags()
andwp_fusion()->user->remove_tags()
will now attempt to convert tag labels to IDs if the CRM doesn’t support adding tags (helps with switching CRMs)
3.43.2 – 3/25/2024
- Improved – Query parameters will now be removed from the “Current Page” and “Landing Page” URLs before being synced to the CRM
3.43.1 – 3/19/2024
- Improved – When using HTTP API logging, the amount of time to perform the API call will be recorded to the logs
- Improved – When an API error is encountered, the full API call and response will be logged
- Improved – When debugging the admin settings page using the
&debug
URL parameter, the contents ofwpf_import_groups
will now be output with the rest of the debug data - Fixed Klavio bugs when adding contacts and syncing fields
- Fixed the import tool tracking failed user imports as successful for purposes of the table of historical imports
- Fixed user IDs getting tracked multiple times in the settings table listing user import history, artifically inflating import counts
3.43.0 – 3/18/2024
New Features
- The Great Date Update
- Added an option with Klaviyo to subscribe contacts to lists with marketing consent
- Added support for the Canadian data center with Zoho
- Added support for loading and displaying read-only fields with HubSpot
Improvements
- Improved Zoho integration
- Errors during the initial OAuth connection with Dynamics 365 will now be displayed as a banner on the setup screen
- Updated expired Microsoft Dynamics 365 app secret
- With Klaviyo, the country code will now be prepended to phone numbers if it’s missing during a WooCommerce checkout or profile update
- Improved WP Fusion’s admin settings and performance
Bug Fixes
- Fixed deprecated utf8_encode() warnings in the Infusionsoft/Keap XMLRPC library
- Fixed fatal error Unsupported operand types: null + array with syncing lead source data without any other contact data present since 3.42.10
- Fixed for HighLevel API update of Feb 8th (now sending 403 status codes when access tokens expire, was previously 401)
- Fixed filters added on wpf_format_field_value before init being un-hooked with Zoho
- Fixed error Timestamp must be of type int when syncing string timestamps with Groundhogg (same site)
- Fixed notice not being logged when an update webhook was received but no matching user was found
- Fixed missing nonce check on search log users AJAX handler
Developer
- updated the Klaviyo API version to 2023-12-15
- added function wpf_phone_number_to_e164() to convert phone numbers to E.164 format
- If a user has a contact ID and no tags, the tags meta will now be deleted from the usermeta table for that user (reduces database size for users with no tags)
3.42.10 – 2/5/2024
Tech Stuff
- Tested for WordPress 6.5.0
New CRMS
- Added a CRM integration with Customer.io
- Added a CRM integation with Omnisend
New Features
- Added multi-select option instead of static lists to HubSpot Integration
- Added Source, Time Zone, and Company Name fields for sync with HighLevel
- Added support for syncing optin statuses with Infusionsoft and Keap
- Added WhatsApp field for sync with Brevo
- Added View in CRM links with Klaviyo
- Added support for syncing to date + time fields with FluentCRM (same site and REST API)
- Added support for webhooks in Mailchimp journeys
- Added contextual tooltips to some fields in the Contact Fields tab of the WP Fusion settings
- Added an option to apply the current user’s CRM tags as CSS classes to the HTML element
- Added support for using an API key with HighLevel instead of OAuth
- Added support for double opt-ins with Brevo
- Added support for setting a default opt-in status with Groundhogg (REST API)
- Added support for saving the field type for each remote field in the CRM. Improves data format conversion (currently just Brevo)
- Added support for lists with FluentCRM (REST API)
- Added support for the new FluentCRM event tracking module (same site and REST API)
- Added Customer.io site tracking scripts
- Added Customer.io webhooks
Improvements
- The “Enable API Queue” setting will be hidden when connected to Groundhogg (Same site), as it’s unnecessary when not sending API calls
- New custom field created in Groundhogg (same site) will now appear immediately in WP Fusion (no Resync Fields required)
- The HighLevel integration will now also attempt to refresh the access token when it encounters a 401 response
- Improved tags select UI when using the block editor— now supports typing in new tags, tag groups, refreshing tags via an API call, and creating tags via an API call
- With Brevo, the keys name and id will now show as reserved and can’t be used for event tracking
- Improved CRM error logging
- Improved performance when looking up a user ID from a contact ID
- Updated the ‘add’, ‘update’, and ‘load’ contact methods with ActiveCampaign to use the new v3 API (should be faster)
- Fixed missing Reset Deep Data checkbox on the advanced tab (with ActiveCampaign)
- Improved duplicate record error handling for ActiveCampaign and Kaviyo
- You can now use “less” and “greater” instead of < and > in the ‘user_meta_if’ shortcode attributes
- If a user registers with a missing ‘first_name’ and ‘last_name’ but their ‘display_name’ is set, the Display Name will be used for the first and last names
- If you try to sync multiselect or array-formatted data to a text field in HighLevel, WP Fusion will automatically combine the items to prevent an API error
- If you add ‘define( ‘WPF_STAGING_MODE’, false );’ to wp-config.php, this will disable automatic staging site detection
- Improved performance with checking permissions on a post based on access rules configured on a taxonomy term
- If staging mode is enabled via wp-config.php (‘WPF_STAGING_MODE’) the “It looks like this site has moved or is a duplicate” notice will not be displayed
- Extended the timeout with ActiveCampaign to 15 seconds
- Post content restricted by WP Fusion will no longer be accessible over the REST API to unauthorized users
- Fixed a fatal error and custom fields not syncing with Jetpack CRM
- With Brevo, select and multiselect fields will now automatically be synced to their numeric values required by the Brevo API (requires a one-time Refresh Available Tags and Fields via the settings)
- The background worker will now return instead of exit when the queue is empty, to prevent the worker from blocking subsequent cron tasks
- Improved HubSpot error handling
- Updated Omnisend event tracking to use new ‘/customer-events’ endpoint
- Multi-key FluentCRM events will now be sent JSON-encoded
- Improved WP Fusion settings
- The JavaScript-based lead source tracking method no longer requires jQuery
Bug Fixes
- Fixed tags not applying via AJAX for auto-login users since 3.41.22
- Fixed Groundhogg (REST API) and Groundhogg (same site) bugs
- Fixed Email not enabled for sync by default and tagging not working when using the Staging CRM
- Fixed unhandled error when looking up a contact by email address failed during a guest checkout or registration
- Fixed duplicate Phone Number field in HighLevel integration
- Fixed Mailchimp bugs
- Fixed ActiveCampaign bugs and fatal errors
- Fixed FluentCRM (REST API) and FluentCRM (same site) bugs
- Fixed a bug with MailerLite, and HubSpot whereby auto-login links were not being properly detected on the initial page load (only on the second page load)
- Fixed inverted timezone offset for syncing date fields with HubSpot
- Fixed shortcode attributes added to the block editor getting saved with curly quotes
- Fixed PHP errors with Brevo
- Fixed deprecated JavaScript console messages
- Fixed Pipedrive error “Name must be given” when updating a contact and the name field was not present
- Fixed WP Fusion fatal errors and bugs
- Fixed PHP error ‘Parse error: syntax error, unexpected ‘)” when gathering the user metadata for a user in PHP < 7.3
- Fixed users who registered without a first name getting their first name synced to the CRM as their username
- Fixed ‘wpf_get_user_id( $contact_id )’ returning the IDs of temporary auto-login users
- Fixed PHP warning ‘foreach() argument must be of type array|object, bool given’ after deleting all taxonomy-based access rules
- Fixed special characters in tag names breaking If-Menu tag condition dropdowns
- Fixed lead source data for new user registrations being synced even if there was an existing contact in the CRM
- Fixed PHP warnings when no custom fields are available for Omnisend and Drip
- Fixed security vulnerability in the ‘user_meta_if’ shortcode, an editor could potentially execute arbitrary PHP code by passing a function name to the ‘field_format’ parameter
Developer
- Added filter ‘wpf_hubspot_redirect_uri’
- Deprecated filter ‘learndash_settings_fields_wpf’ in favor of ‘learndash_course_settings_fields_wpf’ and ‘learndash_quiz_settings_fields_wpf’
- The ‘wp_fusion_init’ hook has been moved from ‘init’ priority 0 to priority 6 so that ‘wp_fusion()->crm->init()” has finished
- Removed an ‘array_filter()’ from the ‘WPF_User::get_user_meta()’ function (was preventing exporting empty values to the CRM)
- Extended the ActiveCampaign API timeout to 20 seconds for loading, applying and removing tags
- The wpf_get_user_id filter can now return 0, and only runs before the database query
3.41.24 – 8/10/2023
Tech stuff
- Tested for WordPress 6.3.0
New CRMs
New Features
- Added an
ALL
operator to theuser_meta_if
shortcode -
Added support for multiple parameters using the
IN
operator with theuser_meta_if
shortcode -
Added View in CRM links to Brevo integration
- Added option to subscribe ConvertKit subscribers to a form when applying tags
- Added HTTP API logging for applying and removing tags with Drip
- Added support for multi-value lookup fields with Dynamics 365
- Added option with Dynamics 365 to sync with Leads or Cases instead of Contacts
- Added “View in CRM” links to HighLevel
- Added “Resubscribe” option with MailerLite— if enabled, and a contact is unsubscribed, they will be resubscribed when they are added to a new group
- Added support for automatically embedding the MailerLite tracking script
- Added support for setting the
bulk_mail
andbulk_sms
fields to Transactional Only with Ontraport - Added an object type dropdown for Salesforce
- Added option to use a multi-select for segmentation with Zoho (instead of tags)
Improvements
- Improved – Force killing the background worker will now also unlock the process lock so a new operation can be started
- Improved – If a post type or category/term is protected and configured with a redirect, any redirect on the underlying post will now take priority
- Improved support for detecting email address changes from non-supported plugins (i.e. JetEngine Forms)
- Improved – CRMs that use OAuth will now have the refresh token and access token fields disabled in the settings to prevent browsers from accidentally filling the fields
- Improved – Exported logs will now include the error level string instead of numeric ID
- Improved – When updating a user profile in the admin, the log source will say
user-profile
instead ofunknown
- Improved styling of the WP Fusion metabox when using the Gutenberg editor
- Improved “Redirect if access is denied” dropdown in admin – Will now only search for pages by title, not content, and will validate external URLs
-
Improved – The View in CRM links in the logs and elsewhere now work when using custom object types (with CRMs that support custom object types)
-
Improved – Shortened ActiveCampaign API timeout to 10 seconds instead of 20
- Improved – With WordPress 6.3+ the Bento tracking script will now be loaded
async
by default - Improved – The Bento tracking script will now wait for the
bento:ready
event - Updated Sendinblue integration to Brevo
- Improved performance for applying and removing lists with Brevo (aka Sendinblue)
- Improved – Brevo integration will now use numeric contact IDs instead of email addresses as unique identifiers (backwards compatible with users who are still linked via email)
- Improved error handling for failed access token refreshes with Constant Contact
- Improved – With Dynamics 365, dynamic marketing lists will now show as Read Only in the WP Fusion UI, and won’t be selectable for “Assign Lists”
- Improved – The GetResponse integration can now trigger autoresponders when a contact is added to a list
- Improved – The GetResponse integration can now remove tags
- Updated HighLevel integration to use the 2.0 API (allows us to add Enhanced Ecommerce and UTM tracking)
- Improved HighLevel error reporting for duplicate contact errors
- Improved HubSpot error handling
- Improved API performance while applying groups with MailerLite
- Improved Maropost error handling
- Improved – Updated Sendlane integration to use the v2 API (requires generating …