We recently saw a posting on a FaceBook group requesting some help with sending WordPress form data from Ninja Forms to Claris FileMaker Pro thru the Data API without the need for the paid add-on Ninja Forms Webhook plugin. Even with the Ninja Forms Webhook plugin, you’d still need server-side code that would take the form data and convert it into a format that could be used with the Data API.
Soliant Consulting has an article with code for FileMaker 17 but the poster had issue getting it to work with FileMaker 19.
We’ve built FileMaker webhooks for a varity of needs in the past and have found that creating a generic table to accept data is an easy way to add future functionality without having to change a lot of PHP code. Processing of the data is then handled inside of FileMaker with common scripting.
We created a github project for this free Ninja Forms plugin in hopes that it will benefit other FileMaker Pro users.
This project consists of two parts – the first is a WordPress plugin that you modify for your FileMaker Server host, and then upload to your web server. The second part is a FileMaker database that accepts the submitted form data. Please consult the readme file that is included with the download for a walkthru of configuring the plugin.
In order to simplify submission of multiple forms, we take an approach where we use a simple table that has two basic fields – the form name, and the form data as JSON.
There is then a script, Process Webhook, that gets invoked and that can be used to parse out the data for other needs. For example, if the form_title value is “Contact Me” then the script could create an entry in a “To Do” database for a salesperson so that they make contact with the person who submitted the form. Using a common table also allows for business logic in the processing script – for example, you don’t want create duplicate records in your CRM or you may want to add some filtering for invalid data.
If you’re interested in hearing more about how NRG can help connect your FileMaker database with WordPress, please contact our sales department.