Automatically translate and review your content via Lokalise

Overview

lokalise-pimcore

Automatically translate and review your content via Lokalise

DEMO VIDEO : https://www.youtube.com/watch?v=5gyPa9YW020

Overview

This extension will work as a bridge between Pimcore and Lokalise for the purpose of automating the whole translation workflow. Thus eliminating most of the manual steps in the task along with availing quality translation-review service from Lokalise.

Requirements

  • Pimcore 5.8 or 6.x
composer require pdchaudhary/lokalise-pimcore:1.0.7
  • Pimcore X (since Version 2.0)
composer require pdchaudhary/lokalise-pimcore

Installation

  1. Open Pimcore admin panel
  2. Go to Setting and click on Bundles
  3. Click on plus icon(+) to enable the plugin
  4. Then add “lokalise_api_key” in website setting from (Setting -> Website settings)
  5. Generate the api key from Lokalise with read and write access. To learn how to generate Lokalise api key please refer to Lokalise documentation.
  6. Now that the Lokalise bundle is enabled and configured, to install go to Settings -> Bundles -> Install(+ icon) against the Lokalise bundle.
  7. The installation process involves creating 3 projects within Lokalise one each for Documents, Objects and Shared Translations. The projects in Lokalise would be created to have the same number of languages as defined in Pimcore settings. Post creation of projects in Lokalise, their Lokalise projectids would be added to websitesettings. If in case the projects already exist in Lokalise, their projectids would be synced to websitesettings.
  8. The installation is now successfully completed.

Document translation

There are two flows in the document translation.

Create Document:-

  1. After opening a document. Lokalise Translate Dropdown will be available on the toolbar. A “Create” option is available in the dropdown for new documents. image
  2. Clicking on the “Create” button, it will open the modal form for language-navigation-title configuration. After filing this form click on the “Apply” button. image
  3. After clicking on the “Apply” button, it will generate keys into Lokalise and then it will change the status for the parent document to “Sent”. image
  4. Then to get the translations of document keys from Lokalise by the translation would have to be verified & reviewed. image
  5. After that you need to run document sync from proccess manager. a child document for that language is automatically generated with the received translation keys and also it will be set verified for that child document or you can also run. image image

Update Document:-

  1. After updating the main document, click on the “Update” button in the Lokalise dropdown.
  2. Note that Update option is only available when their child documents are already created from Lokalise. image
  3. After clicking on the “Update” button, It will update keys in Lokalise. The document state will change to “Updated”.
  4. Only the updated component/keys would be sent for the update in translation. Those keys would be set to unverified at Lokalise end, and would be required to be verified in order to get them updated in Pimcore. image
  5. Need to Click Document sync aftet that it will check full document translation in a certain language is done. If so, a child document for that language is automatically updated with the received translation keys and also it will be set verified for that child document.

Note : Don’t push the keys if parent(path) document is not available for child documents For example: I want to generate a - > test page as de -> test page but de is not available then it will not work so first we need to generate de.

Object translation

Create Object:-

  1. In Object, fields/keys creation option is available at Toolbar -> Lokalise Dropdown -> Create. image
  2. This will send the fields as keys to Lokalise and change the status of the Object from “New” to “Sent”. image
  3. Need to click on object sync to get the translations of Object fields/keys from Lokalise by setting them reviewed and verified.

Update Object:-

  1. Update object works the same as Update Document.

Shared translation

There are two jobs for that

  1. Generate/Update keys job (Push Shared translation)
  2. Sync keys job ( Pull Shared translation) It will generate/update and sync with Lokalise with those jobs.

List of jobs

  1. Sync documents (Work as bulk pull)
  2. Sync objects (Work as bulk pull)
  3. Bulk Object Push
  4. Generate/Update Shared Translation keys
  5. Sync shared translation
  6. Sync Lokalise keys with Pimcore database
You might also like...
A morphological solution for Russian and English language written completely in PHP.
A morphological solution for Russian and English language written completely in PHP.

Morphos A morphological solution for Russian and English language written completely in PHP. Tests & Quality: Features [✓] Inflection of Personal name

PHP library to collect and manipulate gettext (.po, .mo, .php, .json, etc)

Gettext Note: this is the documentation of the new 5.x version. Go to 4.x branch if you're looking for the old 4.x version Created by Oscar Otero http

A Concrete CMS package to add interfaces to translate multilingual content. You can translate content manually, or use cloud API.

Concrete CMS add-on: Macareux Content Translator Concrete CMS has powerful features to manage multilingual content by its default. You can add languag

Danger runs during your CI process, and gives teams the chance to automate common code review chores.
Danger runs during your CI process, and gives teams the chance to automate common code review chores.

Danger runs during your CI process, and gives teams the chance to automate common code review chores. This project ports Danger to PHP. This project is still in the early phase. Feel free to try it out and contribute!

Convenient tool for speeding up the intern/officer review process.

icpc-app-screen Convenient tool for speeding up the intern/officer applicant review process. Eliminates the pain from reading application responses of

ProcessTranslatePage – A Processwire module to translate all page fields via Fluency

ProcessTranslatePage – A Processwire module to translate all page fields via Fluency ProcessTranslatePage is an extension for the Processwire module F

This module integrates Silverstripe CMS with Google Translate API and then allows content editors to use automatic translation for every translatable field.
This module integrates Silverstripe CMS with Google Translate API and then allows content editors to use automatic translation for every translatable field.

Autotranslate This module integrates Silverstripe CMS with Google Translate API and then allows content editors to use automatic translation for every

This package provides some basic methods to implement a self updating functionality for your Laravel application. Already bundled are some methods to provide a self-update mechanism via Github or some private repository via http.

This package provides some basic methods to implement a self updating functionality for your Laravel 5 application. Already bundled are some methods to provide a self-update mechanism via Github.

Laravel Larex lets you translate your whole Laravel application from a single CSV file.
Laravel Larex lets you translate your whole Laravel application from a single CSV file.

Laravel Larex Translate Laravel Apps from a CSV File Laravel Larex lets you translate your whole Laravel application from a single CSV file. You can i

Laravel Larex lets you translate your whole Laravel application with a single CSV file.
Laravel Larex lets you translate your whole Laravel application with a single CSV file.

Laravel Larex Laravel Larex lets you translate your whole Laravel application with a single CSV file. You can import translation entries from lang fol

Magento commands to find translations that are present in one CSV file but not in another, and to translate CSV dicts with DeepL
Magento commands to find translations that are present in one CSV file but not in another, and to translate CSV dicts with DeepL

Hyvä Themes - Magento translation CSV comparison command hyva-themes/magento2-i18n-csv-diff This module adds the bin/magento i18n:diff-csv and i18n:tr

🌐 Free Google Translate API PHP Package. Translates totally free of charge.

Google Translate PHP Free Google Translate API PHP Package. Translates totally free of charge. Installation Basic Usage Advanced Usage Language Detect

A simple tool that I share with you. This tool serves to make conversions from text to audio Google Translate.

A simple tool that I share with you. This tool serves to make conversions from text to audio Google Translate. You can download this conversion 100% for free. Good luck.

Translate laravel resource, vendor, folder or file from google translation without requiring any api information
Translate laravel resource, vendor, folder or file from google translation without requiring any api information

⚡ ⚡ ⚡ Laravel Go Translate Translate laravel resource, vendor, folder or file from google translation without requiring any api information. Table of

Translate eloquent entity models

Translate entity About package This package is intended for adding multi language support to your models. If your application already be working and y

Multi-language translate module for Silverstripe, without having to manage separate site trees.

Silverstripe-fluent - Multi-language translate module for Silverstripe, without having to manage separate site trees.

This package allows to translate text using Google Translator for free without api.

Text Translator for PHP This package allows text translation using Google Translate for free without an API. It extracts the translated text from the

Automatically load your helpers in your laravel application.

Laravel AutoHelpers Automatically load your helpers in your laravel application. Installation You can install the package via composer: composer requi

Owner
Pravin chaudhary
Hello, My name is Pravin. I am a Back End Developer / Front End Developer living in Gujarat, India. I am currently working as a Web Developer at Velox Softech,
Pravin chaudhary
Filament Translations - Manage your translation with DB and cache

Filament Translations Manage your translation with DB and cache, you can scan your languages tags like trans(), __(), and get the string inside and tr

Fady Mondy 32 Nov 28, 2022
Language files manager in your artisan console.

Laravel Langman Langman is a language files manager in your artisan console, it helps you search, update, add, and remove translation lines with ease.

Mohamed Said 867 Nov 30, 2022
A GUI for managing JSON translation files in your laravel projects.

Laravel Language Manager Langman is a GUI for managing your JSON language files in a Laravel project. Installation Begin by installing the package thr

Mohamed Said 515 Nov 30, 2022
The Translation component provides tools to internationalize your application.

Translation Component The Translation component provides tools to internationalize your application. Getting Started $ composer require symfony/transl

Symfony 6.4k Jan 6, 2023
Generates a vue-i18n compatible include file from your Laravel translations

This is fork of martinlindhe/laravel-vue-i18n-generator to give Laravel 8+ support for this excellent package.

Alefe Souza 1 Nov 11, 2021
List of 77 languages for Laravel Framework 4, 5, 6, 7 and 8, Laravel Jetstream , Laravel Fortify, Laravel Cashier and Laravel Nova.

Laravel Lang In this repository, you can find the lang files for the Laravel Framework 4/5/6/7/8, Laravel Jetstream , Laravel Fortify, Laravel Cashier

Laravel Lang 6.9k Dec 29, 2022
Provides support for message translation and localization for dates and numbers.

The I18n library provides a I18n service locator that can be used for setting the current locale, building translation bundles and translating messages. Additionally, it provides the Time and Number classes which can be used to output dates, currencies and any numbers in the right format for the specified locale.

CakePHP 26 Oct 22, 2022
Patchwork UTF-8 for PHP: Extensive, portable and performant handling of UTF-8 and grapheme clusters for PHP

Patchwork UTF-8 for PHP Patchwork UTF-8 gives PHP developpers extensive, portable and performant handling of UTF-8 and grapheme clusters. It provides

Nicolas Grekas 80 Sep 28, 2022
FBT - a internationalization framework for PHP designed to be not just powerful and flexible, but also simple and intuitive

FBT is an internationalization framework for PHP designed to be not just powerful and flexible, but also simple and intuitive. It helps with the follo

Richard Dobroň 4 Dec 23, 2022
Easy multilingual urls and redirection support for the Laravel framework

Linguist - Multilingual urls and redirects for Laravel This package provides an easy multilingual urls and redirection support for the Laravel framewo

Tanel Tammik 189 Jul 18, 2022