Extension:ContentTranslation

The ContentTranslation extension is a tool that allows editors to translate an article from one language to another with the help of machine translation and other translation aids. See for background and additional information. The extension is being developed by the Wikimedia Language Engineering team.

Content Translation server
The extension needs the Content Translation server (a.k.a. cxserver) up and running. See Content translation/cxserver/Setup for setting up the Content Translation server. When running Content Translation locally, following can be added to to use production cxserver:

Translations database
This extension has an optional dashboard feature, which allows translators to see all the translations across all languages. In a multilingual installation of this extension, for example in Wikimedia wikis, a central database is required to serve the dashboard feature. Table definitions for that database are in directory in the extension source code;  has more details. Once database is created, set the global configuration variable as the name of database:

Extension dependencies
ContentTranslation depends on the following extensions:

Configuration variables
For the full list and defaults, see extension.json in the source repository.


 * ContentTranslationDomainCodeMapping
 * Used to map between non-standard language codes and actual domains. The default is the same as in Wikipedia codes and domains.


 * ContentTranslationRESTBase
 * Configuration of RESTBase URL and connection parameters. The defaults are for Wikipedia.


 * ContentTranslationDatabase
 * The name of the database in which the common tables for managing translations across wikis are stored. The default is null, which means that the default database is used.


 * ContentTranslationCluster
 * In a Wikipedia-like database configuration, the name of the cluster on which the database is hosted. The default is null, which means that the default cluster is used.


 * ContentTranslationEventLogging
 * Whether EventLogging is enabled. The default is false.


 * ContentTranslationHighMTCategory
 * A category to which pages that have a high level of machine translation are added upon publishing. The default is null.


 * ContentTranslationSiteTemplates
 * Templates for essential URLs. The defaults assume Wikipedia, so this variable must be configured differently for other sites. Where relevant, $1 is replaced by the language code, and $2 is replaced by the page title.


 * ContentTranslationTranslateInTarget
 * Whether to open Special:ContentTranslation in the target wiki when clicking the button in the entry point. The domain will be based on $wgContentTranslationSiteTemplates. The default is to open Special:ContentTranslation on the same wiki. (For Wikipedia this is set to true.)


 * ContentTranslationAsBetaFeature
 * Whether ContentTranslation is a beta feature.


 * ContentTranslationTargetNamespace
 * The default target namespace for published articles. The default is Main.


 * ContentTranslationCampaigns
 * Campaigns that are available in the URL as valid values for the campaign parameter in the URL. This allows automatic enabling of the beta feature and event logging.


 * ContentTranslationCXServerAuth
 * CXServer connection configuration.


 * ContentTranslationEnableSuggestions
 * Whether to use the suggestions tab and automatic suggestions. This needs the GapFinder API. This is false by default, but true in Wikipedia.


 * RecommendToolAPIURL
 * The URL for the GapFinder API, needed if ContentTranslationEnableSuggestions is true.

Url parameters
Content Translation mainly works on the special page Special:ContentTranslation. The URL parameters are


 * page: source title
 * targettitle: target title
 * from: source language
 * to: target language
 * campaign: campaign name
 * In Wikimedia wikis, if content translation is not enabled in the user settings then only links to pre-defined campaign will work. Campaings are defined in InitialiseSettings.php  variable.

Example
 * https://fi.wikipedia.org/wiki/Special:ContentTranslation?campaign=wiki-for-human-rights&page=Arja_Havakka&from=fi&to=en&targettitle=Arja_Havakka