PHPackages                             wearerequired/traduttore - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Localization &amp; i18n](/categories/localization)
4. /
5. wearerequired/traduttore

ActiveWordpress-plugin[Localization &amp; i18n](/categories/localization)

wearerequired/traduttore
========================

WordPress.org-style translation API for your WordPress projects.

3.2.0(4y ago)7910.3k↓50%15[17 issues](https://github.com/wearerequired/traduttore/issues)[3 PRs](https://github.com/wearerequired/traduttore/pulls)GPL-2.0-or-laterPHPPHP &gt;=7.1CI passing

Since Jun 18Pushed 4mo ago3 watchersCompare

[ Source](https://github.com/wearerequired/traduttore)[ Packagist](https://packagist.org/packages/wearerequired/traduttore)[ Docs](https://github.com/wearerequired/traduttore)[ RSS](/packages/wearerequired-traduttore/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (7)Dependencies (10)Versions (11)Used By (0)

Traduttore
==========

[](#traduttore)

[![PHPUnit](https://github.com/wearerequired/traduttore/workflows/PHPUnit/badge.svg)](https://github.com/wearerequired/traduttore/workflows/PHPUnit/badge.svg)[![Lint](https://github.com/wearerequired/traduttore/workflows/Lint/badge.svg)](https://github.com/wearerequired/traduttore/workflows/Lint/badge.svg)[![codecov](https://camo.githubusercontent.com/6648df81129f64fc3501d48f2ff92b1b3857a96203a7e98240c323de252734a6/68747470733a2f2f636f6465636f762e696f2f67682f776561726572657175697265642f747261647574746f72652f6272616e63682f6d61737465722f67726170682f62616467652e737667)](https://codecov.io/gh/wearerequired/traduttore)[![Latest Stable Version](https://camo.githubusercontent.com/fd83a872ee8eb847d92d3089b68bc7068ae333c89517f6d16bec61dd301693b1/68747470733a2f2f706f7365722e707567782e6f72672f776561726572657175697265642f747261647574746f72652f762f737461626c65)](https://packagist.org/packages/wearerequired/traduttore)[![Latest Unstable Version](https://camo.githubusercontent.com/0abdb97a9f9325b1484cdaa7a86ba0967dbfd8dc180745dea7b9be3ec91a1f51/68747470733a2f2f706f7365722e707567782e6f72672f776561726572657175697265642f747261647574746f72652f762f756e737461626c65)](https://packagist.org/packages/wearerequired/traduttore)

Traduttore is a WordPress plugin that allows you to host your own WordPress.org-style translation API for your WordPress projects.

How it Works
------------

[](#how-it-works)

Working on a multilingual WordPress project with custom plugins and themes can be quite cumbersome. Every time you add new strings to the project, you have to regenerate POT files and update the PO/MO files for every locale. All these changes clutter the history of your Git repository and are prone to errors as well. Plus, you can't easily send these translation files to your clients.

These problems don't exist for plugins and themes hosted on [WordPress.org](https://wordpress.org/), as they benefit from the [translate.wordpress.org](https://translate.wordpress.org/) translation platform. Whenever you publish a new version of your project, WordPress.org makes sure that new strings can be translated. With Traduttore, you can now get the same experience for your custom projects hosted on GitHub!

Every time you commit something to your plugin or theme, Traduttore will extract translatable strings using [WP-CLI](https://github.com/wp-cli/i18n-command) and add import these to GlotPress.

Then, you (or even your clients!) can translate these strings right from within GlotPress. Whenever translations are edited, Traduttore will create a ZIP file containing PO and MO files that can be consumed by WordPress. A list of available ZIP files is exposed over a simple API endpoint that is understood by WordPress.

Using our little helper library called [Traduttore Registry](https://github.com/wearerequired/traduttore-registry), you can then tell WordPress that translations for your project should be loaded from that API endpoint.

After that, you never have to worry about the translation workflow ever again!

Features
--------

[](#features)

- Automatic string extraction
- ZIP file generation and caching
- Works with any WordPress plugin or theme hosted on GitHub
- Custom WP-CLI commands to manage translations
- Supports [Restricted Site Access](https://de.wordpress.org/plugins/restricted-site-access/)
- Supports sending [Slack](https://wordpress.org/plugins/slack/) notifications

[![a required open source product - let's get in touch](https://camo.githubusercontent.com/47e05f68aa9692e2185b9c29cb810dcd02ea3546c00fb25e0152a343154b76bf/68747470733a2f2f6d656469612e72657175697265642e636f6d2f696d616765732f6f70656e2d736f757263652d62616e6e65722e706e67)](https://required.com/en/lets-get-in-touch/)

###  Health Score

46

—

FairBetter than 93% of packages

Maintenance48

Moderate activity, may be stable

Popularity39

Limited adoption so far

Community21

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 73.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~218 days

Recently: every ~326 days

Total

7

Last Release

1579d ago

Major Versions

2.0.3 → 3.0.02019-03-15

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1446895?v=4)[required](/maintainers/wearerequired)[@wearerequired](https://github.com/wearerequired)

---

Top Contributors

[![swissspidy](https://avatars.githubusercontent.com/u/841956?v=4)](https://github.com/swissspidy "swissspidy (291 commits)")[![ocean90](https://avatars.githubusercontent.com/u/617637?v=4)](https://github.com/ocean90 "ocean90 (62 commits)")[![grappler](https://avatars.githubusercontent.com/u/1785641?v=4)](https://github.com/grappler "grappler (27 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (5 commits)")[![szepeviktor](https://avatars.githubusercontent.com/u/952007?v=4)](https://github.com/szepeviktor "szepeviktor (3 commits)")[![krokodok](https://avatars.githubusercontent.com/u/10128264?v=4)](https://github.com/krokodok "krokodok (1 commits)")[![lloc](https://avatars.githubusercontent.com/u/1012205?v=4)](https://github.com/lloc "lloc (1 commits)")[![florianziegler](https://avatars.githubusercontent.com/u/6289412?v=4)](https://github.com/florianziegler "florianziegler (1 commits)")[![pedro-mendonca](https://avatars.githubusercontent.com/u/7371591?v=4)](https://github.com/pedro-mendonca "pedro-mendonca (1 commits)")[![florianbrinkmann](https://avatars.githubusercontent.com/u/2310924?v=4)](https://github.com/florianbrinkmann "florianbrinkmann (1 commits)")[![dottxado](https://avatars.githubusercontent.com/u/23632632?v=4)](https://github.com/dottxado "dottxado (1 commits)")

---

Tags

glotpressglotpress-pluginwordpresswordpress-pluginwordpresstranslationsglotpress

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/wearerequired-traduttore/health.svg)

```
[![Health](https://phpackages.com/badges/wearerequired-traduttore/health.svg)](https://phpackages.com/packages/wearerequired-traduttore)
```

###  Alternatives

[kkomelin/laravel-translatable-string-exporter

Translatable String Exporter for Laravel

3291.4M10](/packages/kkomelin-laravel-translatable-string-exporter)[wearerequired/traduttore-registry

Allows loading translation files from a custom GlotPress site running Traduttore

1566.7k6](/packages/wearerequired-traduttore-registry)[afragen/translations-updater

This framework provides automatic decoupled languate pack updates from a public repository for your WordPress plugin or theme.

211.8k](/packages/afragen-translations-updater)[erag/laravel-lang-sync-inertia

A powerful Laravel package for syncing and managing language translations across backend and Inertia.js (Vue/React) frontends, offering effortless localization, auto-sync features, and smooth multi-language support for modern Laravel applications.

3812.2k](/packages/erag-laravel-lang-sync-inertia)[acclaro/translations

Easily launch and manage multilingual Craft websites without having to copy/paste content or manually track updates.

1229.5k](/packages/acclaro-translations)[itsmattburgess/laravel-translate

Populate laravel translation files using services such as Google Translate

222.5k](/packages/itsmattburgess-laravel-translate)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
