Publisher does not support the Fluid field type. Please do not contact asking when support will be available.

If you purchased an add-on from expressionengine.com, be sure to visit boldminded.com/claim to add the license to your account here on boldminded.com.

Ticket: Parsing order Expression Engine 2.9.3 creating issues with Publisher in Freeform

Status Resolved
Add-on / Version Publisher 1.6.2
Severity
EE Version 2.9.3

Rob Post

Apr 22, 2015

We’ve used Freeform Pro 4.0.11 / EE 2.7.3 / Publisher 1.3.2 to generate forms using the composer. As we need localized labels we used the publisher tag {phrases: phrase_language} as the label field in Freeform fields (cp).

These label fields were then nicely translated (rendered) on the final template.

However since upgrading to 4.2.2 (and EE tot 2.9.3. and Publisher 1.6.2) these translations don’t work anymore. The final template shows the tag {phrases: phrase_language} instead of the rendered label.

Below is the response from Solspace, however none of the suggestions seem to work (except rebuilding 10+ forms).

Are these issue known to you and do you have any suggestions?

————————————————————————————————————————————————————————————

Sorry for the delay as I had to check with our devs, which confirmed what I thought: EE 2.9.x has made a number of changes to its parsing engine, which is very likely explaining your situation. Using variables/tags in field labels isn’t something that is documented in Freeform, but it seems this was working for you up to now. Although we have no experience with Publisher, our hypothesis is that EE template parsing changes is affecting how parsing is behaving in this case, when EE, Freeform and Publisher are combined for your purposes.

Again, it’s difficult to say how/when Publisher tags are parsed. I had a quick look at the Publisher documentation (https://boldminded.com/add-ons/publisher/phrases), and they mention that {phrase:[phrase_short_name]} is early parsed. EE must have changed something so that this isn’t parsing when it should, or how it used to.

Although we can’t test this since we’re not familiar with Publisher, perhaps using a custom Composer Template might be a workaround. In a custom Composer Template, you should have {composer:field_label} available. This parses to the field’s label. Instead of having the label use “{phrase:my_phrase}”, maybe (maybe, since I can’t test this) use “my_phrase” for the label, and in the Composer Template use {phrase:{composer:field_label}}. This *might* put parsing in the right order: hopefully {composer:field_label} parses first, making “{phrase:my_phrase}”, which Publisher then parses to the phrase.

Another option would be to use {exp:freeform:form} instead, or use {exp:freeform:composer} as a tag pair, which contains Composer code: this is similar to making your own code in the CP in the “Composer Templates” section.

#1

BoldMinded (Brian)

Rob, it’ll be a couple days before I can look into this. If EE did change something in the early parsed variables the things like Low Variables would be having major issues. Can you paste the template code you’re seeing this happen in?

#2

BoldMinded (Brian)

Rob, as mentioned I’ll look into this, but my gut tells me it isn’t a Publisher issue. If LV isn’t having an issue, then I suspect nothing has really changed with the early parsed variables b/c it uses them heavily.

https://twitter.com/litzinger/status/590870984162484224

#3

BoldMinded (Brian)

Also, if the Publisher phrases are working outside of the Freeform tag, then this isn’t something I can fix. Publisher is creating these variables as early as it possibly can, which is when all other add-ons can create them. I know some Solspace add-ons have some custom template parsing classes in them which have caused issues in the past with Publisher and other add-ons (not just my add-ons).

#4

BoldMinded (Brian)

Closing this because I’m pretty sure its not a Publisher related issue. Sounds more like an issue with Freeform.

#5

BoldMinded (Brian)

Can you share the full template code?

#6

BoldMinded (Brian)

The file you sent doesn’t actually include any form tags other than the {form_template} variable. Does {phrases: phrase_language} and other phrase variables work outside of the Freeform tag?

#7

BoldMinded (Brian)

Also, please respond via this thread and not directly in the email. It helps me to keep all communication in one location.

#8

Rob Post

All form translation was done from within the (freeform) composer, so within the CP. There are no tags other then the one above.

However I’ve solved the issue by removing the composer and build all forms as templates.

Login to reply