Doing a lot of WordPress stuff, having multilingual pages is a common problem. There are several solutions available for WordPress, also WordPress provides a nice API for letting people provide translations.
So why not have a look at Confluence as well?
What it does
The add-on allows you to translate internal strings from Confluence and add-ons.
How we built it
Using the standard Atlassian development tools.
Challenges we ran into
- Confluence doesn't provide a nice API for translations.
- Dynamically generating forms
Accomplishments that we're proud of
Finding an entry point to make custom translations possible. We will see how it works ;)
We've also wanted to develop a custom framework for creating forms faster and easier within Confluence for a while now. We took the chance and developed a first version for this. All forms you see are dynamically generated and submitted. The settings form is generated using a simple annotated pojo and settings are automagically stored within Bandana. No need to write any custom code, except the POJO. The translation form is generated using a basic form description, though we need a little custom code for generating this and strring the result. Most awesome side effect: using AJAX for getting and saving the forms makes it super fast (compared to normal Confluence form submissions ;)
What we learned
Using SOY and even more about Confluence internals.
What's next for Translate for Confluence
We already have a lot of ideas (see our roadmap), but weren't able to implement them for now. Also we first need to see how much need there really is for such a solution.
Despite this we hope to be able to give feedback to Atlassian for improving the internals of Confluence to make translating content much easier for users and developers.