Dynamic Tagging In FluentCRM
Would it be possible to enable dynamic tagging with the FluentCRM integration. It seems to me that everything is there to do this. When a tag name is typed in, or in the case of field syncing the field value, a tag lookup by name can be executed. If the tag name doesn't exist then create the tag. It seems like the FCRM API's are there to do this, but maybe there's more to this than what I'm thinking of. But if possible, I would like to see this so that I can use Dynamic Tagging in the field sync.
With FluentCRM you *can* type a new tag name into the dropdowns in the WP Fusion UI, and WP Fusion will make an API call to create the tag, and store the tag ID to be used later.
But because FluentCRM uses IDs to reference tags, it’s not possible to send a text field and have it converted to a tag on the fly like it is with ActiveCampaign and some other platforms. It has to be created before it can be used.
In theory it would be possible to auto-create tags via individual API calls for each unrecognized tag value, and allow “dynamic tagging” like you’re used to with AC. But we don’t currently support this with any platforms since every tag requires an API call. If you synced your WooCommerce product categories to tags, for example, this could be enough API calls to cause the checkout to time out. Which we’d prefer to avoid.
We could maybe get around that by creating at most one or two new tags per request, while ignoring the rest… but that also has drawbacks. As you can see it gets complicated 😅
I’ll leave this up and we can see what the interest is like, but at the moment it’s too big of an undertaking for a feature that isn’t used by many customers.
Hey Jack… In FCRM v2.9.0 is this change:
“Now you can use a single API call (PHP / REST / Webhook) to attach/detach tags or lists. Now, the API also accepts dynamic strings for your tags so it will create the tags/lists if not available. Please checkout the updated PHP Documentation here and REST API Documentation here.”
Does that help?
I saw that. So it is supported now. The problem is it won’t be backwards compatible with IDs. Still thinking about the best way to handle it.
We may add a setting on the Advanced tab, “Use tag strings instead of IDs” or something.
Then you will need to go through all your content and update the saved IDs to names. We don’t have a way to do that automatically for the settings saved on posts, courses, products, etc.
We *can* try to match an ID to a name when a tag is *applied*, in case an ID gets missed somewhere in the settings. But I wouldn’t rely on it for a long-term solution.
For example if a post is protected by array( 123, 456 ), and the customer has tags saved as array( “Customer”, “Member” ), their access to the post will fail because the tags don’t match (even if Customer has ID 123 and Member has ID 456).
So, yes, it’s possible now. Trying to come up with a way to allow it without inflicting a lot of suffering 😅
Hmmm… personally, I don’t think I would switch back from IDs to Names in my installations.
It was a pain moving from AC to FC and trying to map all the changes going from Name -> ID (I wrote a routine to scan everything and convert as much as possible, but it was intensive – especially those buried in page builder modules.)
Plus, I often have had issues with AC clients changing tag names in AC which then caused ripple effects and problems in WP content protection and WC products because the changed tag name would not cascade through. With IDs I don’t have that issue.
I prefer tag IDs so that the name doesn’t really matter and is dynamic. There are just a few cases (usually debugging) where the ID isn’t as nice as the name – in which case I just need a little snippet to return the names via the IDs.
The only thing I was thinking with this latest API enhancement is that it sounds like either int or strings can be passed in the tag API and FC will handle either. It’s implicated that is the case for a “create tag” call where tags are dynamically created from strings if the name doesn’t currently exist. I haven’t looked at what the API return is (true/false or the ID of the created tag.) And I haven’t looked to see if they have now a single tag lookup API that handles either int or string. I know they state they have combined several API calls into one.
Anyway, for me my choice is to stick with IDs. The only thing I don’t get is dynamic tag creation, but FC may have already solved that (mostly) through their UI. The have added the ability to create tags ad-hoc in a number of areas in the UI. That would be the only addition I would like for WPF — the ability to create a tag name in various UI places, such as WC protection, LearnDash linking, etc. Just a simple “Create New Tag” icon that would pop-up and allow me to enter a tag name and have it created. 🤔
Right I prefer IDs as well.
You can actually already create a tag via the WPF UI. Just type in the name and click the prompt to “Add New”. An API call will be sent to create the tag, and the ID will be saved 😎
Doh! 🙄 I stopped using that long ago for some obscure reason that I have now forgotten, so thus I had my blinders on and didn’t even see it when looking at the dialog. Some people might say I have a not so keen mind for the obvious…