digitalpulsebe / craft-multi-translator

Translate Entry content using external services
Other
0 stars 1 forks source link

FR: Translate and lock individual fields #11

Open allesweb opened 1 month ago

allesweb commented 1 month ago

Our client would like to be able to translate an entry and then adjust the translations afterward without the risk of any manual translations being overwritten. Would it be possible to translate and lock individual fields, like a button and a checkbox next to each translatable field's label?

JodebaDigitalPulse commented 1 month ago

Hi @allesweb,

the plugin will only handle fields that are marked translatable for now. The method you describe requires a new step in the flow with an extra UI. What would you think of a new config setting: an array of excluded field handles?

But you could rely on the Craft versioning of course, and just compare versions after the translation has been saved in a new revision.

allesweb commented 1 month ago

@JodebaDigitalPulse Thanks for replying!

In our case we would need a way for editors to lock and translate individual fields during the translation process, or another way to manually translate some fields, but utilizing the automatic translation as a starting point without overriding all manual work.

Perhaps I can leverage multi-translator in another way? Are you emitting any events I can check for, creating my own UI solution?

I'll look into versioning as well!

JodebaDigitalPulse commented 1 month ago

Hi @allesweb , sorry for the late response. There are no events at the moment, but how do you see putting an UI in between, do you suggest javascript events or php events?

But agreed, it would be better to allow last minute settings. For example the 'reset slug' could also be set or unset before each translation action.

I also think default settings should move to the database as well. So in the process I will think about events and possibilities for extensibility. I'll keep you posted when I have more about this.

allesweb commented 1 month ago

I'm not very well versed in plugin or module development, or this plugin's code, so I'm shooting from the hip here, but I visualized intercepting a PHP translation event and provide my own list of field ids to be excluded from translation. That list could be populated by any custom means, either for opt in or out.

I'm not sure how much custom module development this particular project budget can fit though, so either the client settle for multi-translator and compromise on features, or we move on looking for another plugin. :/

JodebaDigitalPulse commented 1 month ago

We'll discuss this internally and will define our roadmap, soon more about this.