PHPackages                             unclecheese/silverstripe-langeditor - 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. unclecheese/silverstripe-langeditor

ActiveSilverstripe-module[Localization &amp; i18n](/categories/localization)

unclecheese/silverstripe-langeditor
===================================

CMS module to edit static language files.

2.0.3(9y ago)218639[3 issues](https://github.com/unclecheese/LangEditor/issues)PHP

Since Mar 14Pushed 9y ago5 watchersCompare

[ Source](https://github.com/unclecheese/LangEditor)[ Packagist](https://packagist.org/packages/unclecheese/silverstripe-langeditor)[ RSS](/packages/unclecheese-silverstripe-langeditor/feed)WikiDiscussions master Synced 2mo ago

READMEChangelog (5)Dependencies (2)Versions (5)Used By (0)

LangEditor Module
=================

[](#langeditor-module)

Gives a CMS user the ability to change the static language files and translate them into new languages.

Maintainer Contact
------------------

[](#maintainer-contact)

- Uncle Cheese &lt;unclecheese (at) leftandmain (dot) com&gt;

Requirements
------------

[](#requirements)

SilverStripe CMS ~3.x-dev / 3.6.x-dev

Installation
------------

[](#installation)

- Download the module
- Extract the downloaded archive into your site root so that the destination folder is called langeditor, opening the extracted folder should contain \_config.php in the root along with other files/folders
- Run dev/build?flush=all to regenerate the manifest

Usage
-----

[](#usage)

A new section 'Translator' is added to the CMS.

You can filter the language files by module and language with the filter options on the left. Once selected the translations are displayed on the right. You can search within the translation using the search field and the namespace dropdown.

You can copy a language file into a new language using the copy function. After copying the file you can translate its content.

If you use Translatable extension, the setting for `Translatable::get_allowed_locales()` is used to determine what languages can be created.

If you use Fluent extension, the setting for `Fluent::locales()` is used to determine what languages can be created.

To hide certain modules or languages from translation add the following to your \_config:

```
Config::inst()->update('LangEditor', 'exclude_modules', [
    'cms',
    'framework',
    '[module folder]',
]);

Config::inst()->update('LangEditor', 'exclude_locales', [
    'en_GB',
]);

```

Or via yaml config file:

```
LangEditor:
    exclude_modules:
        - 'cms'
        - 'framework'
        - '[module folder]'
    exclude_locales:
        - 'en_GB'

```

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance17

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 66.7% 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 ~340 days

Total

4

Last Release

3423d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/654636?v=4)[Aaron Carlino](/maintainers/unclecheese)[@unclecheese](https://github.com/unclecheese)

---

Top Contributors

[![doniz](https://avatars.githubusercontent.com/u/4441455?v=4)](https://github.com/doniz "doniz (10 commits)")[![jelicanin](https://avatars.githubusercontent.com/u/692844?v=4)](https://github.com/jelicanin "jelicanin (2 commits)")[![sn4h](https://avatars.githubusercontent.com/u/131519602?v=4)](https://github.com/sn4h "sn4h (1 commits)")[![striky1](https://avatars.githubusercontent.com/u/8904756?v=4)](https://github.com/striky1 "striky1 (1 commits)")[![xini](https://avatars.githubusercontent.com/u/1152403?v=4)](https://github.com/xini "xini (1 commits)")

---

Tags

languagessilverstripe

### Embed Badge

![Health badge](/badges/unclecheese-silverstripe-langeditor/health.svg)

```
[![Health](https://phpackages.com/badges/unclecheese-silverstripe-langeditor/health.svg)](https://phpackages.com/packages/unclecheese-silverstripe-langeditor)
```

###  Alternatives

[silverstripe/translatable

Allows translation of DataObject and SiteTree records into multiple languages

53192.0k8](/packages/silverstripe-translatable)[tractorcow/silverstripe-fluent

Simple localisation for Silverstripe

92421.6k26](/packages/tractorcow-silverstripe-fluent)

PHPackages © 2026

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