Performant Translations

Description

This project uses a new approach to handle translation files in WordPress, making localization blazing fast.

An in-depth i18n performance analysis showed that localized WordPress sites load significantly slower than a site without translations.

With this plugin’s new approach to localization, this overhead is massively reduced, making your site fast again.

If your site is using a language other than English (US), you should see immediate speed improvements simply by activating this plugin.

WordPress 6.5 and newer

Important: this new functionality has been merged into WordPress 6.5! However, this plugin is still useful!

On WordPress 6.5+, this plugin automatically converts existing .mo files to .php and afterwards only loads the translations from the .php file.
This is useful for cases where language packs are not downloaded from WordPress.org but somewhere else.

Screenshots

  • Chart showing the load time improvement achieved with this plugin.

Installation

Installation from within WordPress

  1. Visit Plugins > Add New.
  2. Search for Performant Translations.
  3. Install and activate the Performant Translations plugin.

Manual installation

  1. Upload the entire performant-translations folder to the /wp-content/plugins/ directory.
  2. Visit Plugins.
  3. Activate the Performant Translations plugin.

FAQ

What makes this plugin so fast?

By converting .mo files to .php files, the translations can be parsed much faster.
Plus, .php files can be stored in the so-called OPcache, which provides an additional speed boost.

Can I use this plugin on my production site?

While the plugin is mostly considered to be a beta testing plugin, it has been tested and established to a degree where it should be okay to use in production.
Still, as with every plugin, you are doing so at your own risk.

Has this plugin been tested with other multilingual plugins?

Yes. This plugin has been tested with common multilingual plugins, such as WPML, Weglot, TranslatePress, MultilingualPress, and Polylang.
If you still encounter issues, please let us know.

Do I need to do anything special to enable this plugin?

No. Once the plugin is activated, it just works, and you should see speed improvements right away. If you run into issues, please open a new support topic.

Can I safely remove this plugin after installation?

Yes. Once you deactivate and uninstall the plugin, all .php files generated by it will be removed from the server.

How can I contribute to the plugin?

Contributions are always welcome! Learn more about how to get involved in the Core Performance Team Handbook.

Where can I submit my plugin feedback?

If you have suggestions or requests for new features, you can submit them as an issue on the GitHub repository.

If you need help with troubleshooting or have a question about the plugin, please create a new topic on our support forum.

Where can I report security issues?

To report a security issue, please visit the WordPress HackerOne program.

Reviews

18. Juni 2024 1 reply
I have finished the Korean translation for ‘Performant Translations’I just want to say thank you for developing such a good plugin.And I hope it will be translated into more languages so that many WordPress users can use it conveniently. ‘Performant Translations’ 의 한국어 번역을 모두 마쳤습니다.좋은 플러그인을 개발해주어서 고맙다는 인사를 전하고 싶습니다.그리고 ‘Performant Translations’ 플러그인이 보다 다양한 언어로 번역되어 많은 워드프레스 사용자들이 편리하게 사용할 수 있기를 바랍니다.
11. Abrëll 2024
What this plugin does is amazing! There were some issues that made my website slow. The website achieved a mobile page speed of 52. Blocked display for more than 10 seconds. I don’t have the technical knowledge to fix this in the code. This would have cost me around $600. I found this plugin and all errors were removed from the website with one click. I am incredibly happy with the result. And that with a free plugin! I knew it should be possible. Because I am so happy, I take the paid subscription! Thank you very much!
21. Januar 2024
Browsing the dashboard feels instant snappier, even if your hosting is already fast and performant – it still makes a difference!
16. Januar 2024
I’ve got a multi language site (with WPML) that has a huge performance problem. I was not able to figure out what is actually causing the performance problem, the main problem probably has nothing to do with i18n, this plugin still helps cause it significantely speeds up the translations, leaving the only bottleneck to be the unknown problem. Many thanks for your efforts!
23. November 2023
I tried this plugin on a couple of websites and I believe it makes my admin user experience a bit faster. Cached front end is fast as ever. It works great with Polylang, WooCommerce and Loco Translate. I like where this is going and I hope it gets implemented into the WP Core soon. Update:Duplicator (Pro) throws a runtime error when trying to make a backup while this plugin is activated. Temporarily disabling it solves the issue.
Read all 16 reviews

Contributors & Developers

“Performant Translations” is open source software. The following people have contributed to this plugin.

Contributors

“Performant Translations” has been translated into 20 locales. Thank you to the translators for their contributions.

Translate “Performant Translations” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

For the plugin’s full changelog, please see the Releases page on GitHub.

1.2.0

  • This plugin now requires WordPress 6.5

1.1.2

  • Fixed a minor regression when assembling file paths to look up.

1.1.1

  • Fixed: Addressed a slight performance regression in 1.1.0.
  • Fixed: Addressed an issue with incorrect plural forms for certain locales.

1.1.0

  • Enhancement: Support for this functionality existing in WordPress 6.5.
  • Enhancement: Added hardening for file paths not being strings because of a faulty plugin filter.
  • Enhancement: Invalidate OPcache after writing PHP files.
  • Enhancement: Improve compatibility with pluralized strings referenced as singulars.

1.0.9

  • Enhancement: Improved compatibility with WPML string translation add-on.

1.0.8

  • Fixed: Added workaround for potential file permission issues.

1.0.7

  • Fixed: Prevent issue where not all core translations were updated.
  • Enhancement: Change the order translations are loaded in to improve backward compatibility.

1.0.6

  • Enhancement: Remove JSON file support.
  • Fixed: Add hardening when using translation file paths with symlinks.

1.0.5

  • Enhancement: Improved compatibility with Loco Translate to avoid duplicate files.

1.0.4

  • Enhancement: Several minor performance improvements.
  • Enhancement: Use different file extension (.mo.php instead of just .php) to prevent conflicts.
  • Enhancement: “Import” existing translation file if one is already loaded for a text domain.
  • Enhancement: Use WP Filesystem API if available.

1.0.3

  • Enhancement: Improved compatibility with Query Monitor’s developer tools panel.
  • Enhancement: Added new performant_translations_load_translation_file filter.
  • Enhancement: Enforce network-only activation on Multisite.

1.0.2

  • Fixed: Add hardening for invalid values being passed to translation functions.

1.0.1

  • Enhancement: Regenerate translation files when Loco Translate updates MO files.
  • Fixed: Add hardening for invalid context being passed.
  • Fixed: Fix handling of locales without plurals, such as Persian.

1.0.0

  • Initial release.