BLACK FRIDAY
Save 59% on PageForge Annual $191/year $485/year
Claim 59% Off →
Theme and plugin translation for Polylang (TTfP) icon
Slowing down Tested up to 6.6.9 #1 in languages

Theme and plugin translation for Polylang (TTfP)

Theme and plugin translation using Polylang for WordPress. Extension for Polylang plugin.

Active installs10K+10K+ tier
Downloads · 30d2.7K▼ -12.9% vs prev. 30d
Rating4.7/535 reviews
Health score49/100Fair
All-time downloads287.4KSince Feb 2016
Support resolved—No recent threads
RequiresWP 5.7PHP 7.0+
Downloads · 7d578▲ +10.1% week over week
Our verdict

Use with caution

Theme and plugin translation fo… works, but test it on a staging site before relying on it in 2026. It runs on 10K+ sites, is rated 4.7/5 and was last updated 2 years ago, and scores 49/100 on our health check.

  • Proven at scale on 10K+ active sites
  • Loved by users — 4.7/5 from 35 reviews
  • No update in over a year
  • Only tested up to WordPress 6.6 (latest is 7.1)

How does it stack up?

Side-by-side on installs, updates, ratings & support

Daily downloads

61123184Jun 28Aug 11Sep 25
Yesterday95
Daily average (1y)94
Peak day470Jan 8, 2026
Last 12 months34.3K

Download spikes usually follow a new release — each site that auto-updates counts as a download.

Rankings

Where Theme and plugin translatio… stands today

WordPress.org search rankings

Live position in the plugin search, top 100
KeywordPositionCompeting pluginsCategory
languages >100 10,000 Best languages plugins →
multilanguage #35 227 Best multilanguage plugins →
polylang #23 1,477 Best polylang plugins →
translate >100 3,394 Best translate plugins →
translation #52 10,000 Best translation plugins →

Version adoption

Share of active sites per release.

  • 3.488.5%
  • 3.27.7%
  • Other3.8%

Rating breakdown

★★★★★★★★★★ 4.7 from 35 reviews

  • 5★88.6%
  • 4★5.7%
  • 3★0.00%
  • 2★0.00%
  • 1★5.7%

About Theme and plugin translation for Polyla…

From the official readme · v3.4.9

Description

What is “Theme and plugin translation for Polylang”?

Extension for Polylang plugin (Polylang is an extension to make multilingual WordPress websites.).
Plugin is needed to translate the WordPress themes and plugins by Polylang.

How to configure it?

Select themes and plugins to find texts for translation by Polylang.
In admin dashboard:

Languages -> TTfP Settings

How it is work?

“Theme and plugin translation for Polylang” automatically searches all files of WordPress themes and plugins. It chooses from this file only those files with extensions:

  • php
  • inc
  • twig

In addition, is implemented the integration with Timber library (read more: http://timber.upstatement.com) – which allows to translate twig’s skins in simple way.
Plugin in searched skins or plugins chooses texts from Polylang functions, such as:

  • _e(string $text, string $domain = ‘default’);
  • __(string $text, string $domain = ‘default’);
  • _x(string $text, string $context, string $domain = ‘default’);
  • pll_e(string $text);
  • pll__(string $text);
  • esc_html(string $text);
  • esc_html_e(string $text, string $domain = ‘default’);
  • esc_html__(string $text, string $domain = ‘default’);
  • _n(string $single, string $plural, int $number, string $domain = ‘default’);
  • esc_attr_e(string $text, string $domain = ‘default’);
  • esc_attr__(string $text, string $domain = ‘default’);

In your function.php, themes or plugins.

For example:

<p><?php pll_e('My text'); ?></p>

<p><?php _e('My another text', 'my_theme'); ?></p>

On the timber context declare this functions like:

$context['pll_e'] = TimberHelper::function_wrapper('pll_e');

$context['pll_'] = TimberHelper::function_wrapper('pll_');

See more on: https://polylang.wordpress.com/documentation/documentation-for-developers/functions-reference/
These functions are defined by Polylang plugin for printing translations.
Thanks “Theme and plugin translation for Polylang” you can find these strings to translate and add to Polylang register on very simple way.
And then you can translate these texts from the admin dashboard.
The scan result can be seen on the tab with translations:

Settings -> Languages -> String translation

or

Languages -> String translation

You don’t need programs like poedit – you don’t change files with extensions like: .pot, .po, .mo.
“Theme and plugin translation for Polylang” is highly efficient because the scanner is worked only on admin dashboard in tab:
In dashboard:

Settings -> Languages -> String translation

or

Languages -> String translation

Export and import string translation

In dashboard:

Languages -> TTfP Settings

Filter reference

ttfp_domains

Allows plugins and themes (in functions.php) to modify list of text domains (unique identifier for retrieving translated strings).
List of text domains is displayed on “TTfP Settings” page to select them for translation by polylang engine.

Example:

add_filter('ttfp_domains', 'custom_ttfp_domains', 10, 1);
function custom_ttfp_domains(array $domains):array
 {
     $domains[] = "my-custom-domain";
     return $domains;
 }

Filter reference

ttfp_translation_access

Returns whether the user has capability to view and edit translations provided by TTfP.

Example:

add_filter('ttfp_translation_access', 'custom_ttfp_translation_access', 10, 1);
function custom_ttfp_translation_access(bool $hasAccess):bool
 {
     return current_user_can('edit_posts');
 }

Installation

This plugin requires to be installed and activated the Polylang plugin,
This plugin requires PHP 7.0

  1. Upload the “Theme and plugin translation for Polylang” folder to the /wp-content/plugins/ directory on your web server.
  2. Activate the plugin through the Plugins menu in WordPress.
  3. In Dashboard go to the Settings -> Languages -> String translation or Languages -> String translation and find your texts.

Use

<?php
 pll_e('My string'); // similar to _e();
 // or:
 $var = pll_('My string'); // similar to __();
 // or:
  _e('My string', 'my_theme');
 // or:
  $var = __('My string', 'my_theme');

How to enable Twig extension with “Theme and plugin translation for Polylang”? [Timber plugin]

In functions.php add:

if (!class_exists('Timber')) {
    add_action('admin_notices', function () {
        echo '<div class="error"><p>Timber not activated. Make sure you activate the plugin in <a href="' . esc_url(admin_url('plugins.php#timber')) . '">' . esc_url(admin_url('plugins.php')) . '</a></p></div>';
    });
    return;
}

function timber_context()
{
    $context = Timber::get_context();
    $post = Timber::query_post();
    $context['post'] = $post;
    $context['pll_e'] = TimberHelper::function_wrapper('pll_e');
    $context['pll__'] = TimberHelper::function_wrapper('pll__');
    return $context;
}

Timber::$dirname = array('templates', 'views'); // directory names with twig templates
timber_context();

Next, for example in index.php add:

<?php
 $context = timber_context();
 $templates = array('home.twig', 'index.twig'); // twig files for render
 Timber::render($templates, $context);

Then you can use in twig templates polylang functions like this (in templates/home.twig):

{% extends "base.twig" %}
 {% block content %}
     <p>
         {{ pll_e("Test text on TWIG template 1.") }}
     </p>
     <p>
         {{ pll__("Test text on TWIG template 2.") }}
     </p>
 {% endblock %}

Changelog

3.4.9 – 2025/03/15

  • Updated pll_get_plugin_info function – function loads wrong textdomain.

3.4.8 – 2024/10/18

  • Optimized performance for the CSV translations importer.
  • Added support for network-activated plugins.

3.4.7 – 2024/09/01

  • Load current language for “Multilingual Contact Form 7 with Polylang” plugin in translate_cf7_messages.

3.4.6 – 2024/08/07

  • Requires Plugins – by problems with the pro version of Polylang.

3.4.5 – 2024/08/07

  • Requires Plugins – by problems with the pro version of Polylang.

3.4.4 – 2024/08/07

  • Requires Plugins – allow pro version of polylang.

Full changelog on WordPress.org →

Screenshots

Screen show "Polylang" strings translations with "Theme and plugin translation for Polylang".
Screen show "Polylang" strings translations with "Theme and plugin translation for…
Export/import translations as CSV file with "Theme and plugin translation for Polylang".
Export/import translations as CSV file with "Theme and plugin translation for Polylang".
Settings - Select area to be scanned in Strings translations polylang tab.
Settings - Select area to be scanned in Strings translations polylang tab.

For developers

Is this your plugin? Show off the numbers.

Add a live badge to your site, docs or GitHub README. It updates on its own — no account needed.

Active installs badge Rating badge Health score badge

Best Theme and plugin translation… alternatives

All languages plugins →
Alternatives
Rank Plugin Active installs Rating Updated Health
2 Events Manager and WPML Compatibility Events Manager and WPML Compatibility Integrates the Events Manager and WPML plugins together to provide a smoother multilingual… by Marcus (aka @msykes) 1K+ ★★★★★★★★★★ 2.8 (13) 2 days ago 73
3 Disable Login Language Selector Disable Login Language Selector Remove the language selector from the login screen if you have more than one language… by Rick Curran 1K+ ★★★★★★★★★★ 5 (3) 8 months ago 49
4 Language Switcher Language Switcher Add a Language Switcher to Menus, Post Types and Taxonomies. by rafasashi 1K+ ★★★★★★★★★★ 4 (7) 1 year ago 44
5 Language Switcher for Elementor & Polylang Language Switcher for Elementor & Polylang Easily add a customizable language switcher to your Elementor pages and connect translated… by Satinder Singh 300+ ★★★★★★★★★★ No reviews 4 weeks ago 69
6 Per Post Language Per Post Language This plugin allows the user to set the blog language per post or page while having a… by Fahad Alduraibi 200+ ★★★★★★★★★★ 4.9 (9) 10 years ago 38
7 WP_Multilingual WP_Multilingual WP_Multilingual is extension that brings WordPress multilingual support. With it's help you… by Oleg Butuzov 100+ ★★★★★★★★★★ No reviews 18 years ago 25
8 PRyC WP: Add timestamp to style.css link PRyC WP: Add timestamp to style.css link Add timestamp to style.css file by Patryk 80+ ★★★★★★★★★★ 5 (2) 4 months ago 60
9 Smartcat Translator for WPML Smartcat Translator for WPML The easiest way to translate your WPML-enabled WordPress site into various languages. by smartcatai 60+ ★★★★★★★★★★ 5 (3) 5 months ago 53
10 Locale Auto Switch Locale Auto Switch Automatically switch the locale according to the locale of the browser. by Katsushi Kawamori 30+ ★★★★★★★★★★ No reviews 1 month ago 63
11 R3DF Multisite Language Indicator R3DF Multisite Language Indicator Adds language indicators (flag, locale or language) beside the site title of sites to help… by Rick Radko 20+ ★★★★★★★★★★ No reviews 10 years ago 24

FAQ

Theme and plugin translation for Po…: quick answers

Straight answers, pulled from live WordPress.org data.

Live data from WordPress.org · checked Sep 26, 2026

Is Theme and plugin translation fo… free?

Yes. Theme and plugin translation fo… is free to download and use from the official WordPress.org plugin directory.

Is Theme and plugin translation fo… safe to use in 2026?

Theme and plugin translation fo… works, but test it on a staging site before relying on it in 2026. It runs on 10K+ sites, is rated 4.7/5 and was last updated 2 years ago, and scores 49/100 on our health check.

How many websites use Theme and plugin translation fo…?

Theme and plugin translation fo… is active on 10K+ WordPress websites and has been downloaded 287,382 times since it launched in February 2016. It was downloaded 2,670 times in the last 30 days.

Does Theme and plugin translation fo… work with WordPress 7.1?

Theme and plugin translation fo… is officially tested up to WordPress 6.6.9, while the latest release is 7.1.2. It may still work, but try it on a staging site first.

What PHP version does Theme and plugin translation fo… need?

Theme and plugin translation fo… requires PHP 7.0 or higher. Most hosts run PHP 8.x today, so it works on any modern WordPress hosting.

When was Theme and plugin translation fo… last updated?

The latest version, 3.4.9, was released on March 15, 2025 (2 years ago).

Who makes Theme and plugin translation fo…?

Theme and plugin translation fo… is developed and maintained by Marcin Kazmierski.

What are the best alternatives to Theme and plugin translation fo…?

The most popular alternatives to Theme and plugin translation fo… are Events Manager and WPML Com… (1K+ installs), Disable Login Language Sele… (1K+ installs) and Language Switcher (1K+ installs).

Powered by PageForge

Want thousands of pages that rank like these? Build them in an afternoon.

This directory runs on the same engine as PageForge. Turn any spreadsheet, CSV or API into thousands of fast, SEO-ready WordPress pages — with schema, internal links and AI-written copy baked in.

  • CSV, Google Sheets & API data sources
  • AI content, schema & internal links per page
  • Works with Elementor, Gutenberg, Yoast & Rank Math
  • Free on WordPress.org — no credit card
Sarah is here to help!
Hi there! 👋 Need help finding what you're looking for?
Sarah
Sarah
Online & Ready to Help
Hi there! 👋 Need help finding what you're looking for?

We'll use this to continue our conversation

Just now ✓ Verified

Join 500+ SEO Pros Scaling Their Strategy

Get exclusive programmatic SEO tactics, AI content workflows, and the latest PageForge updates delivered straight to your inbox. Stay ahead of the algorithm.

We care about your data in our privacy policy.