From 192a353ebadabf831ddb1e1ad6afe8f6feb84525 Mon Sep 17 00:00:00 2001 From: Erik Montnemery Date: Thu, 1 Dec 2022 10:20:20 +0100 Subject: [PATCH] Add blog post about new entity translations (#1559) --- blog/2022-12-01-entity_translations.md | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 blog/2022-12-01-entity_translations.md diff --git a/blog/2022-12-01-entity_translations.md b/blog/2022-12-01-entity_translations.md new file mode 100644 index 00000000..6defac68 --- /dev/null +++ b/blog/2022-12-01-entity_translations.md @@ -0,0 +1,34 @@ +--- +author: Erik Montnemery +authorURL: https://github.com/emontnemery +title: "Translating the state of entities" +--- + +The method for integrations to provide translations for states of its entities under other integrations, for example to translate an integration's sensors has changed. + +Integrations should no longer use custom device classes together with a `strings..json` file. Instead, entities should set the `translation_key` property on an entity and include that `translation_key` in the integration's `strings.json`. + +:::warning +Pointing to translations via the `translation_key` property is currently only supported for entities with a `unique_id`. +::: + +The following example `strings.json` is for a Moon domain `sensor` entity with its `translation_key` property set to `phase`: + +```json +{ + "entity": { + "sensor": { + "phase": { + "state": { + "new_moon": "New moon", + "first_quarter": "First quarter", + "full_moon": "Full moon", + "last_quarter": "Last quarter" + } + } + } + } +} +``` + +For more details, see the [`translation`](docs/internationalization/core/#state-of-entities) and [`entity`](docs/core/entity#generic-properties) documentation. \ No newline at end of file