# Translate

This theme includes built-in support for multiple languages and can be fully translated using simple JSON files. It also provides automatic RTL support for Arabic (`ar`).

### Included languages

* English (en)
* Spanish (es)
* French (fr)
* Portuguese (pt)
* German (de)
* Dutch (nl)
* Italian (it)
* Turkish (tr)
* Arabic (ar)

### How it works

Translations are powered by Ghost’s `{{t}}` helper and a set of JSON files inside the `locales/` folder.\
You can edit any existing file or add a new language without installing dependencies.

For more details, refer to the official [Ghost translation guide](https://ghost.org/docs/themes/helpers/translate/).

### How to edit or add a translation

#### Step-by-step:

{% stepper %}
{% step %}
Unzip the theme on your computer.
{% endstep %}

{% step %}
Open the **"locales"** folder inside the theme directory.
{% endstep %}

{% step %}
Use a code editor (such as **Visual Studio Code** or **Cursor**) to edit a file like `pt.json`.

```json
{
  "Subscribe": "Inscreva-se"
}
```

{% endstep %}
{% endstepper %}

#### Add a new language (optional)

{% stepper %}
{% step %}
Duplicate an existing file (e.g., `en.json`).
{% endstep %}

{% step %}
Rename it using a valid language code (e.g., `de.json`).
{% endstep %}

{% step %}
Replace the values with your translations.
{% endstep %}
{% endstepper %}

#### Repackage the theme

Compress the entire theme folder into a new ZIP file.

#### Upload the updated theme

{% stepper %}
{% step %}
In Ghost Admin, go to (**Theme** → **Change theme** → **Upload theme**).
{% endstep %}

{% step %}
Upload your updated ZIP file.
{% endstep %}
{% endstepper %}

#### Set your site language

Go to (**General** → **Publication Language**) and enter your language code (e.g., `pt`, `es`, `fr`, `ar`, `de`).

### Recommended tools

For safe translation editing, use a code editor that supports **UTF-8** and **JSON** formatting:

* [Visual Studio Code](https://code.visualstudio.com/)
* [Cursor](https://cursor.com/)

{% hint style="warning" %}
Avoid editors like Notepad or Word — they may introduce errors or break JSON formatting.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ektothemes.com/guides/haas/advanced/translate.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
