So I’ve just completed my upgrade from 2.6 to 5.1 phew…
Well, I say upgrade, it was more like a rebuild, since I simply downloaded the new version, uploaded, installed and started setting up templates, channels, fields and entries to match the previous build from around 5 years ago.
(Unfortunately this had to be done, as the client’s web-space is shared with other more modern sites that cease to function due to recent upgrades without upgrading the server to php7, which caused all these old expression engine sites to straight up die.)
So currently I have all my pages and links and content working, but for my contact page, which seems to have been set up using a ‘freeform’ plugin, which EE 5.1 doesn’t appear to recognise or appreciate?
If I run with the code in, I get an error page with only the following message:
Error
The following tag has a syntax error:
{exp:freeform:form}
Please correct the syntax in your template.
Removing the channel code causes the page to post as expected (albeit with a non-functioning form).
So the email form seems to be built based on a plugin from ‘solspace’ called ‘freeform’.
A quick search around the internet led me to a paid extension of the same name but I didn’t find any info regarding the one I already have and if it can work in some way with this new version of EE.
I couldn’t find any info from my predecessors regarding the original software or how to access or upgrade it or anything like that (or perhaps it used to be free?), I only have the data from the previous build, which includes the previous plugin folder which works on the EE 2.6 site on php 5.4.
Does anyone know if this can be fixed, initialised, activated, integrated, modified, amended or configured in some way to work with the current version of EE?
Hopefully I’m just missing some simple but important step somewhere?
The info I could find in the EE 5.1 documentation seemed to indicate that third party plugins, modules, extensions, etc. can be uploaded into the ‘system/user/addons’ folder and installed from the back end ‘Developer > Addons’ Add-On Manager page - though uploading the files to that folder didn’t appear to cause them to show up in the Add-On Manager to install there, for me.
It will suck for me if the only answer is to purchase this plugin myself and install it to the new site and rebuild it all for that.
(Especially since this isn’t like a client-requested upgrade or anything, but something I’m having to do off my own back to fix the site literally disappearing due to necessary server upgrades relating to other users’ sites.)
If anyone can help out at all, that should be the last thing I need to finish off on the site build.
TLDR; Need to get my freeform email form plugin from EE 2.6 site to work in EE 5.1.
Freeform is an add-on from Solspace so you will need to contact that vendor for details. The plugin made for ExpressionEngine 2.6 from 2013 most definitely will not work on a modern version of ExpressionEngine. We partner with Solspace regularly and in fact sell that latest versions of Freeform on our store, but they may have upgrade options that are less expensive than buying a new copy.
OK thanks for the reply.
For the time being I’ve decided to recreate the form using the standard ee form tools, and have put a little bit of spare time into assessing what the limitations are and how to get around them.
So first off, I suppose I will be missing out on the database integration, which is ok for now.
Then there’s the fact that I can’t seem to specify how the data is used to create the email, (correct me if I’m wrong) which causes me to have to use the standard fields that it wants to use… This wouldn’t really be so much of an issue, except that the built in validation that it wants to use likes to take over the page and redirect it to an un-styled page with an error message, which I would rather avoid. I’ve gotten around this by setting up fields named as the form wants to receive (in order to validate and create the email message), and made them hidden, and also some dummy fields that the user sees, which I am validating with my own jquery code, then passing the values on to the hidden fields once I’m happy with them, in order to pass the built in validation and not get redirected.
Upon successful validation, the user is redirected again to an un-styled message page (though with a success message), and finally to the specified redirect location, which I can style and customise using templates.
I would like to know if there’s a way to remove that success message redirect page, and perhaps there’s a better way to achieve what I’ve described above also.
Another issue that I have is with the ‘from’ and ‘reply-to’ parameters.
It’s good to see that there’s a way to set the collected email address from the user as the ‘reply-to’ email address, in order to utilise another email for the ‘from’ email address (since email services are likely to spam an email generated from a different domain to the sender), though unfortunately it seems that the only option here is for that value to be inherited from the ee system administrator email field, which isn’t always going to match the domain (and in my case does not).
I was wondering if there’s a way to somehow override this, or somehow pass the form submission a new value for that ‘from’ field when submitting, either through configuration, different parameters, or programatically.
TLDR; Using the standard ee contact form tools, I want to bypass the built-in ‘submission success’ blank redirect screen, and customise the ‘from’ address for the contact email to a value of my choice (so that the email won’t go to spam).
You could pseudo-bypass the interstitial by submitting your request via AJAX and handling the interstitial response in your JS, so it’s not forwarded to the visitor’s browser. For the other questions, no; the built-in contact form is very basic and not designed for the level of data collection and custom processing that a robust add-on like Freeform supplies. The from
cannot be customized if using the reply-to
override.
You might place an estimate on the value of your hourly time, even if no one is paying you, and compare that to the price of the add-on. If you were using and rely on its features, I think you’ll find that the simple and most cost-effective solution would be to upgrade your copy of Freeform.
Shame. Seems I could do without the advanced features for a basic provisional function, but you would think the basic form should at least let you define from and reply-to fields in this day and age, even without custom error messaging, email templating and advanced mailing and security options - since the alternative is guaranteed spam folder submission.
I don’t disagree, but also wanted to provide you with practical solutions available immediately. But to get that functionality natively, you can always help contribute to ExpressionEngine. Contributing doesn’t always mean code, even starting a GitHub issue and working with the community to identify desired behavioral changes is helpful. Have a look at the Contributing guide if you’d like to get involved!
Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.