Joomla has the ability to install language packs updates with just one click. This can be done for language core files Creating_language_packs_for_extensions_in_Joomla_2.5 but also for extensions languages files
You should read: 1- Extension Manager Update Help16:Extensions_Extension_Manager_Update 2- Creating language packs for extensions in Joomla 2.5 Creating_language_packs_for_extensions_in_Joomla_2.5
by including the "update server" tag on XML language packs you can have oneclick updates for extension languages. This needs to be included in the XML language pack and it links to an update server. Joomla extension update panel checks the installed XML language packs for the version number and update server. If the update server has more recent version number it alerts for an updated available
Language pack XML file needs to include (zz-ZZ stands for your language code):
<updateservers> <server type="collection" priority="1" name="zz-ZZ Language Updates">http://update.zzZZ.com/translationlist.xml</server> </updateservers>
See full example here. Creating language packs for extensions in Joomla 2.5 Creating_language_packs_for_extensions_in_Joomla_2.5
The update server will include one translationlist.xml with all the latest language release versions. This is done with a tag for each extension/language available.
If you wanto to create an update server list for Joomla + tinyMCE + 2 different components (using the names Jupiter and Pluto as component names) for the zz-ZZ language, the translationlist.xml contents would be:
<?xml version="1.0" encoding="utf-8"?> <extensionset name="zz-ZZ Language Updates" description="zz-ZZ Joomla core and extensions languages updates"> <extension name="zz-ZZ language for Joomla" element="pkg_zz-ZZ" type="package" version="188.8.131.52" detailsurl="http://update.zzZZ.com/details/zz-ZZ_details.xml"/> <extension name="zz-ZZ language for TinyMCE" element="file_tinymce_zz-ZZ" type="file" version="184.108.40.206" detailsurl="http://update.zzZZ.com/details/zz-ZZ_details_tinymce.xml"/> <extension name="zz-ZZ language for Jupiter" element="file_jupiter_zz-ZZ" type="file" version="220.127.116.11" detailsurl="http://update.zzZZ.com/details/zz-ZZ_details_jupiter.xml"/> <extension name="zz-ZZ language for Pluto" element="file_pluto_zz-ZZ" type="file" version="18.104.22.168" detailsurl="http://update.zzZZ.com/details/pt-PT_details_pluto.xml"/> </extensionset>
Good practice: the translation language version should use the same version number as the extension itself (as in 2.0.2.x) and one more number for each translation version (as in x.x.x.1) so you can easily remember what extension version is that translation good for!
Listed in the translationlist.xml are the different languages packs available to update. Each pack URL and version its stated in an individual details xml file for each extension. A details XML file would include the details for that language pack as in: \details\zz-ZZ_details_jupiter.xml
<?xml version="1.0" encoding="utf-8"?> <updates> <update> <name>zz-ZZ language for Jupiter</name> <description>zz-ZZ language for Jupiter 2.0.2</description> <element>file_jupiter_zz-ZZ</element> <type>file</type> <version>22.214.171.124</version> <downloads> <downloadurl type="full" format="zip">http://joomlacode.org/gf/download/frsrelease/3238/72703/jupiter_202_lang_zz-ZZ_v2021.zip</downloadurl> </downloads> <targetplatform name="joomla" version="2.5"/> </update> </updates>
This can have more than one language pack (inside <updates> ... </updates> ) but you can only list one extension by file.