Manage your Crowdin translations via Symfony2 commands thanks to the akeneo/crowdin-api library.
Please use akeneo/nelson instead, which is up-to-date, maintained and contains more features.
We assume you're familiar with Composer, a dependency manager for PHP.
Use following command to add the bundle to your composer.json and download package.
If you have Composer installed globally.
$ composer require "jjanvier/crowdin-bundle":"*@dev"Otherwise you have to download .phar file.
$ curl -sS https://getcomposer.org/installer | php
$ php composer.phar require "jjanvier/crowdin-bundle":"*@dev"You need to enable the bundle inside the symfony kernel.
<?php
// app/AppKernel.php
public function registerBundles()
{
$bundles = array(
new Jjanvier\Bundle\CrowdinBundle\JjanvierCrowdinBundle(),
);
}Add the following configuration to your config.yml :
jjanvier_crowdin:
crowdin_api_key: %crowdin_api_key%
crowdin_project_identifier: %crowdin_project_identifier%Add the following keys to your parameters.yml:
crowdin_api_key: MY_API_KEY
crowdin_project_identifier: MY_PROJECT_IDENTIFIERcrowdin:api:add-directoryadds a directory to the Crowdin project.crowdin:api:delete-directorydeletes a Crowdin project directory. All nested files and directories will be deleted too.crowdin:api:downloaddownloads last package from Crowdin.crowdin:api:exportbuilds a zip archive with latest Crowdin translations. Can be invoked only once every 30 minutes.crowdin:api:add-fileadds a new file to the Crowdin project.crowdin:api:update-fileupdates an existing file in the Crowdin project.crowdin:api:delete-filedeletes a file from the Crowdin project. All the translations will be lost without ability to restore them.crowdin:api:statusgets Crowdin project progress by language.crowdin:api:uploaduploads latest version of your localization files to Crowdin.crowdin:extractretrieves translations of your project and extract them.