zaus
Forum Replies Created
-
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] Work with WordPress 4.0.1?It should work just fine up to 4.1 (I’ve been testing it with the other extensions too) — I haven’t had a chance to update the readme with the compatibility.
Have you tried it? If it doesn’t work it’ll be apparent very quickly, so you can immediately turn off the plugin after testing it.
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] enctype and problems with PardotI was just fiddling around with the other plugins and, at least on my machine it was sending
application/x-www-form-urlencoded; charset=UTF-8by default.Forum: Plugins
In reply to: [Forms: 3rd-Party Xml Post] Cannot Access Plugin SettingsCould you access the Forms-3rdparty settings page before? Your user needs
manage_optionscapability in the first place.Can’t help much without the debug dump and/or some Infusionsoft documentation, but it sounds like this:
http://community.infusionsoft.com/showthread.php/183-Error-640(cross-post from GitHub issue thread https://github.com/zaus/forms-3rdparty-integration/issues/23)
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] Gravity Forms honeypot compatibilityThat is a good question.
I’m hooking to
gform_pre_submission_filter(link) (via here) as the best place to intercept submissions. It should be after GF has validated the form and right before it sends anything, so I would think that would mean the honeypot has been evaluated before it ever reaches my plugin. You’d need to reach out to GF (or the honeypot author) for confirmation.Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] Method GETAssuming resolved, but feel free to add to this thread for related problems…
Not really sure — my plugin relies on
wp_remote_post, which is supposed to abstract the weirdness of making http-requests. If you need to “manually” change the request you can use my hookservice_filter_args(link), unlesswp_remote_postdoesn’t support changing SSL versions, then you can bypass using it in favor of something likecurl— see the suggestion “How do I make a GET request instead of POST?” on the plugin FAQ.Since this is a fairly obscure issue, including it as an option would be better of as an add-on plugin; I’m assuming the majority of uses for this plugin don’t have this problem.
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] CF7 to Salesforce: No leads createdI’m going to pre-emptively mark it as resolved because I’m 103% sure that’s your fix.
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] CF7 to Salesforce: No leads createdAha — you have the same problem — you’re using an older version of CF7 (3.4.2), while I updated my plugin to work with the latest CF7 version (3.9), which changed how it accesses submission data.
Read the linked thread for more detail, but essentially you either need to upgrade CF7 or downgrade my plugin.
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] enctype and problems with PardotThis plugin just uses whatever magic wordpress does in
wp_remote_post, which is probablymultipart/form-dataor something similar.I think you want something similar to how my addon plugin Xpost can change the request into XML, but instead run it through
http_build_query.Or it may be as simple as using Xpost to add the header:
'Content-Type' => 'application/x-www-form-urlencoded;charset=UTF-8'like this random semi-related post suggests.
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] I cannot see the Service Test pageIf you check ‘debug mode’, and enter your email in the settings, it should send you the dump as an email — the ‘service test page’ is just an “echo” of what you posted, used rather than sending your form data to a real service endpoint. You don’t have to use the service test page to examine the response, but it’s helpful to confirm that what you meant to send is what arrived at the endpoint (especially if you’ve written some custom hooks or are using an “add-on” plugin like Xpost that changes the request).
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] Customization AdviceAll great ideas; Pull requests welcome 🙂
- To apply the conditional logic, you’d hook like I just mentioned here. As far as the nice admin ui you mocked-up, you could hook to
service_settingsseen here, like my other add-on plugins (like Xpost do). Making that field selector dropdown would be more complicated, and is a really good idea and should be part of the way my plugin handles the different integrations. The form plugin integrations should attach themselves to the forms3rdparty singleton - Would use the same field picker as in the above, and would solve Issue 22 and make users love you forever.
- Would use hook
service_filter_postorservice_filter_argsto modify the post body based on your criteria, which would ideally be part of the$serviceargument.
#2 and #3 of the admin ui would rely on currently non-existant hooks to
plugin-ui.php, specifically around line 208. There are a couple hooks for that admin page (aforementionedservice_settings,service_metabox,service_metabox_after), but they’re not really in the right places for some of the features you wanted.I’d be happy to work with you on this, either adding some hooks so you can write a new plugin (#1 is a great candidate) or working to add the features directly (#2 definitely). Just send me a message through my website or make a github issue.
I would point out that I’m hesitant to include more data to the service configs within the plugin (as opposed to writing an add-on to do this) like #1 and #3, as it’s not something I think is usually needed, and might cause conflicts for some users. (At the moment) everything is saved to the
wp_optionstable as a single setting, so there is a limit to how much data can be stored (i.e. too many fields/services make it blow up) (Aside: this plugin started out smaller in scope).If you need anything custom, please contact me through my website.
Yes, it is possible — there are a ton of places you can hook to action/filters:
- Intercept the ‘use-form’ determination with a low priority value (< 10) to completely prevent the plugin from attempting anything. See https://github.com/zaus/forms-3rdparty-integration/blob/master/forms-3rdparty-integration.php#L406. You’ll have access to
<useit?>, $form, $service_id, $service['forms'] - As mentioned in #5 of the “Hooks” section at https://wordpress.org/plugins/forms-3rdparty-integration/other_notes/, the “usual” place to check is with the hook
service_filter_argsat https://github.com/zaus/forms-3rdparty-integration/blob/master/forms-3rdparty-integration.php#L478. There you have access to$post_args, $the_service_config, $the_plugin_form, and if you return an array withresponse_bypasskey it’ll treat that value as the submission response.
Forum: Plugins
In reply to: [Forms: 3rd-Party Integration] Method GET@kellmb, don’t worry about not understanding it, hooks are fairly complicated parts of wordpress.
1. You can really put it anywhere, but the easiest/most common place to put it would be in your theme’s
function.phpfile as you mentioned.2. The hook is just to set the response from the endpoint (https://github.com/zaus/forms-3rdparty-integration/blob/master/forms-3rdparty-integration.php#L490), which you’re overriding with the response from
wp_remote_getvswp_remote_postinstead. If you want it to behave differently depending on the form, you have the$formargument, as well as the contents of the submission in$post_args['body'].3. It will affect every form attached in the plugin admin. If you need to further differentiate between attached forms, you have the
$formparam in the hook for extra filtering. - To apply the conditional logic, you’d hook like I just mentioned here. As far as the nice admin ui you mocked-up, you could hook to