guave / deepl-bundle
Adds support for deepl.com translation to Contao 5.0+ dca input fields
Installs: 2 511
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 4
Forks: 0
Type:contao-bundle
pkg:composer/guave/deepl-bundle
Requires
- php: ^8.1
- contao/core-bundle: ^5.0
- guzzlehttp/guzzle: ^6.0 || ^7.0
- symfony/config: ^6.4 || ^7.4
- symfony/dependency-injection: ^6.4 || ^7.4
- symfony/http-kernel: ^6.4 || ^7.4
- terminal42/contao-changelanguage: ^3.7
- terminal42/dc_multilingual: ^4.0 || ^5.0
Requires (Dev)
- bamarni/composer-bin-plugin: ^1.8
- contao/manager-plugin: ^2.3.1
- phpunit/phpunit: ^9.6
- roave/security-advisories: dev-latest
- symfony/phpunit-bridge: ^6.4 || ^7.4
Conflicts
- contao/manager-plugin: <2.0 || >=3.0
README
Adds support for deepl translation API in DCA input fields.
Also supports Multilingual Data Container
Requirements
- Contao 5.0+
- PHP 8.1+
Install
Install Contao bundle
composer require guave/deepl-bundle
Add deepl API key to .env
DEEPL_API_KEY=''
Install assets
if you use web as the document root, pass it as an argument
php vendor/bin/contao-console assets:install
Configuration
guave_deepl: enabled: true freeApi: true defaultLanguage: de tables: tl_content: fields: - title - text multiColumnFields: category_grid: fields: - title - text
Register Custom ActiveLanguageResolver
Register it with the tag deepl.resolver
# services.yml services: # ... App\Resolver\ActiveLanguageByProductLanguageResolver: public: true tags: - { name: 'deepl.resolver', priority: 50 }
# src/Resolver/ActiveLanguageByProductLanguageResolver.php <?php namespace App\Resolver; use Contao\DataContainer; use Guave\DeeplBundle\Resolver\ActiveLanguageResolverInterface; class ActiveLanguageByProductLanguageResolver implements ActiveLanguageResolverInterface { public function supports(DataContainer $dataContainer): bool { // TODO: Implement supports() method. } public function resolve(DataContainer $dataContainer): ?string { // TODO: Implement resolve() method. }} }