⏳ Launch offer: −25 % on the 1-site license
h
m
s
WP-Translate
Documentation

Complete WP-Translate documentation

From first installation to technical reference: all features explained, step by step, on a single page with an index to jump to what you're looking for.

Qué es WP-Translate

WP-Translate turns your WordPress into a multilingual site without leaving the frontend. You open your own page in the language you want, click on the text you need to change, and edit it while looking at the real design, so a translation never breaks a button or a headline.

You don't need an account, API key, or registration: it installs and works. A free integrated translation engine translates from the first minute, and you can connect your own DeepL, Google, Gemini, or Yandex key whenever you want.

Visual translation on your own website, with the context in front of you.

Each language published on its own URL, indexable by Google.

Everything is saved in your database: the visitor is served normal HTML, without calls to any API.

Instalación y activación

Install it like any other WordPress plugin: upload the ZIP file from Plugins → Add New → Upload Plugin, or copy the folder to /wp-content/plugins/. Then activate it from the menu of Plugins.

Requirements: WordPress 6.1 or higher and PHP 8.0 or higher.

No need to touch the database: upon activation, it automatically creates its own tables.

If you update from a previous version, the new tables are created automatically on the first load after the update.

Sin clave para empezar

The free engine requires no configuration. You can translate your first language without creating any account or entering any API key.

El asistente de configuración

The first time you activate the plugin, a guided wizard appears that gets you ready to translate in four steps. It's the fastest way to get the site configured without going through all the settings manually.

Los cuatro pasos

1. Welcome. A summary of what you will achieve.

2. Source language. You confirm what language your site is currently written in.

3. First additional language. You choose the language you want to translate to; it is created with its URL prefix.

4. Translation engine. You stick with the free engine or paste your DeepL/Google/Gemini/Yandex key, and the first site scan is launched.

💡
¿Se cerró el asistente?

You can reopen it anytime from the "Wizard" link in the plugin row, on the Plugins screen. It doesn't delete anything already configured.

Añadir tu primer idioma

In WP-Translate → Languages you define the main language (the one your site already has) and add the target languages. Each additional language is published under its own URL prefix —for example /en/ o /fr/— with its reciprocal hreflang tags.

The main language marks from which text everything else is translated.

Each target language has its code, its flag, and its URL prefix.

You can activate or deactivate a language without losing what has already been translated in it.

💡
Cuántos idiomas

The free version publishes your main language plus one additional language. With a license, languages are unlimited.

Editor visual en el frontend

It's the heart of the plugin. You open any page of your site in the language you are translating and enter edit mode from the toolbar. From there, every text on the page is clickable: headlines, buttons, menus, image texts. When you click, a side panel suggests the automatic translation, and you adjust it.

You translate while looking at the final design: you instantly see if a long text misaligns a button.

The panel suggests the engine's translation and lets you correct it before saving.

You change languages from the bar itself to check how each version looks.

💡
Cómo se entra

Access to the editor is in the WordPress admin bar when you visit your website logged in. Only users with permission to edit the site can see it.

Escaneo del sitio completo

Instead of going page by page, the scan extracts all translatable strings from your posts and pages at once and makes them ready in the string manager. This way you can translate them in bulk without having to open each one in the visual editor.

Detects the actual text of each content, including that generated by builders.

It's idempotent: rescanning does not duplicate already registered strings.

Gathers all pending work in a single place for batch translation.

⚠️
Disponibilidad

Full site scanning is a feature of the licensed version. In the free version, you translate with the visual editor and with batch translation of what has already been detected.

Traducción por lotes

With one click you send all pending strings for translation. The queue works in batches, resumes where it left off if interrupted, and never translates the same string twice, because it first consults the translation memory.

Processes in batches to avoid saturating the server or the engine.

Resumes automatically: if you close the tab, it continues where it left off when you return.

Shows real progress and how many strings remain per language.

💡
Tamaño de las tandas

The free version translates in batches of 10 strings; with a license, batch translation is complete.

Gestor de cadenas

The string manager is the central list of all your site's text and its translation status in each language. From here you filter, search, and decide what is translated and how.

Estados de una traducción

EstadoQué significa
PendienteLa cadena existe pero aún no tiene traducción en ese idioma.
AutomáticaTraducida por el motor, todavía sin revisar por una persona.
ManualEscrita o corregida a mano. La traducción automática nunca la pisa.
RevisadaMarcada como comprobada y definitiva.
💡
Por qué importa el estado «manual»

When a translation is manual or reviewed, no automatic process overwrites it. It's a way to «fix» a text —for example, your brand name— so that a batch translation doesn't change it.

Memoria de traducción

Each translated string is saved in your own database. If the same phrase appears on two hundred pages, the engine is called only once and the other one hundred ninety-nine reuse that translation.

Saves engine calls and, therefore, cost and time.

Maintains consistency: the same phrase is translated identically across the entire site.

It's yours: if you ever remove the plugin, you can export your translations beforehand.

Motores de traducción

You choose the engine in Settings → Translation provider. The free engine works without any key; paid ones use your own API key and you are billed directly by the provider.

MotorClaveNotas
Gratuito (por defecto)NoTraduce sin configuración. Usa el endpoint público de Google y, como respaldo, MyMemory.
Google Cloud TranslationTu claveCalidad y cuota de Google Cloud, facturada a tu cuenta.
DeepLTu claveMuy buena calidad en idiomas europeos.
Google GeminiTu claveTraducción con IA; procesa varias cadenas por llamada.
Yandex TranslateTu claveAlternativa con buena cobertura de idiomas.
💡
Solo se contacta el motor que elijas

A request is sent only when you actively translate a string or launch a batch, and it contains only the text to be translated and the language code. While a visitor views already translated pages, no external service is contacted.

Cambiar de motor sin perder nada

You can change engines at any time without losing what has already been translated. The text already in your database is preserved; the new engine is only used for translations you request from that moment on.

Start with the free engine and switch to DeepL or Gemini when you want more quality.

What has already been translated remains as is; only new content uses the new engine.

You can retranslate a specific string manually if you want to redo it with the new engine.

URLs por idioma

Each additional language is published under its own URL prefix. The translated version is not a parameter or a layer on top: it is a real address that Google can crawl and index as an independent page.

Clean structure by prefix: tusitio.com/en/…, tusitio.com/fr/….

The main language remains at the root, without a prefix.

Slugs can be translated so that the URL is also in the target language.

hreflang, canonical y sitemap

For Google to understand that each URL is the version of the same page in another language, the plugin automatically adds the signals required by the search engine.

Reciprocal hreflang tags between all language versions of each page.

Self-referencing canonical in each language, so that they are not marked as duplicate content.

Sitemap by language, so that the search engine discovers all versions (licensed feature).

¿Google indexará la versión traducida?

Yes. By being published under its own URL, with reciprocal hreflang and its own canonical, each language is independently indexable.

Selector de idioma (switcher)

The selector allows the visitor to change language. It is available in four forms, so that it fits anywhere without touching code.

Forma de insertarloDónde se usa
Shortcode En cualquier contenido, página o texto.
Widget del temaEn barras laterales y zonas de widgets clásicas.
Ítem de menúComo una entrada más de tus menús de navegación.
Widget de ElementorArrastrándolo en el editor de Elementor.

Various styles: dropdown, list, flags, or inline.

Shows flag and name, or only flag, depending on what you prefer.

Compatibilidad

WP-Translate works with what you already have set up, without special templates or fragile configurations.

Any theme. It does not depend on the theme to detect or serve translations.

Elementor and Elementor Pro. It reads designs from its own internal format, so not even the text from Elementor Pro widgets escapes.

WooCommerce. Covers product texts and shop pages.

Common caching plugins. Since each language is served as normal HTML, it coexists with caching.

💡
Correos de WordPress y WooCommerce

With a license, the plugin can also translate outgoing emails (WordPress and WooCommerce notifications) to the recipient's language.

Panel de ajustes

Everything that is not text translation is controlled from WP-Translate → Settings: the active engine and its key, the selector's behavior, and advanced options like translate on save.

Translation provider and API key (if you use a paid engine).

Translate on save: when you edit a post, its changes are automatically translated (licensed feature).

Meta title and description translated for the SEO of each language (licensed feature).

Qué incluye cada versión

The free version is fully functional for one site with an additional language. The license lifts the limits and adds scaling features. The essentials are never limited: the visual editor, the selector, URLs per language, hreflang, canonical, and serving what has already been translated always work.

FunciónFreeCon licencia
Idiomas adicionales1Ilimitados
MotorGoogle gratuitoGemini, DeepL, Google y Yandex
Cuota automática500 cadenas/mesSin tope
Traducción por lotesTandas de 10Completa
Escanear el sitio entero
Traducir al guardar
Meta título y descripción traducidos
Sitemap por idioma
Correos de WordPress y WooCommerce
Perder la licencia no rompe el sitio

A site that loses its license continues to function and does not lose languages: it only loses access to paid features. What has already been translated continues to be served.

Licencia y actualizaciones

The license is for life (one-time payment, no renewal). What defines each plan is the number of sites on which you can activate it, not an expiration time.

You paste the key on the license screen and the paid features are unlocked, without reinstalling or losing translations.

Plugin updates arrive on your WordPress dashboard like those of any other plugin.

You can release a site to move the license to another installation within your site limit.

Referencia técnica

For more technical profiles, these are the integration points that the plugin exposes at a usage level. There is no need to touch code to use the plugin; this section is only for those who want to integrate it precisely.

Shortcodes

ShortcodePara qué
Inserta el selector de idioma en cualquier contenido.

Widget de Elementor

The language selector is available as a native Elementor widget: it is dragged to the design and its style (dropdown, list, flags or inline) is configured from the editor itself.

API REST

The plugin registers its operations under its own WordPress REST API namespace (wptm/v1). The routes are protected by WordPress administration permissions: only an authorized user can launch scans or translations. The internal detail of each route is part of the plugin's operation and is not necessary for using it.

Dónde se guarda todo

All translations live in their own tables within your WordPress database, not in an external service. This is what makes serving a language not dependent on any API and ensures that the translations are yours.

Translations and their status (automatic, manual, reviewed) are saved per string and per language.

The translation memory avoids calling the engine again for a repeated phrase.

Upon uninstalling, the plugin asks if you want to keep or delete its tables.

💡
Sobre el código del plugin

The internal logic —how it detects strings, how it rewrites URLs or how it signs requests— is part of the product and is not documented here. This guide covers everything you need to use it and get the most out of it.

Resolución de problemas

The most common questions, answered.

Suele ser caché. Si usas un plugin de caché o Elementor, vacía su caché tras traducir: el motor sustituye el texto al vuelo, pero el HTML cacheado puede seguir sirviendo la versión anterior unos minutos.
Marca esa cadena como «manual» con el texto correcto (puede ser igual al original). Las traducciones manuales nunca se sobrescriben por la traducción automática.
Lanza un escaneo del sitio completo para que se detecten todas las cadenas, incluidas las del cuerpo de las entradas, y vuelve a traducir por lotes. El 100% se refiere a lo detectado hasta ese momento.
No. Las traducciones se guardan en tu base de datos y se sirven como HTML normal. No hay ninguna llamada a una API mientras un visitante carga la página.
Son tuyas. Puedes exportarlas antes de desinstalar, y la rutina de desinstalación te pregunta si quieres conservar o borrar las tablas del plugin.

Ready to translate your site?

Install WP-Translate and have your first language published in minutes. No key to start.

⏳ Only for 3 hours

−25 % on your Pro license

Translate your website without limits: large batches, DeepL and Gemini, translated SEO and lifetime updates. If you decide now, the 1-site license is 36.75 € instead of 49 €.

horas
min
seg
La oferta ha terminado, pero puedes ver los planes con su precio normal.
PRO LICENSE · 1 SITE

49 €

36.75 €

One-time payment · PRO25 coupon automatically applied

¿Aún no lo tienes claro? Descarga la versión gratuita y pruébalo sin pagar nada.