This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Per Post Language


Do you write posts in different languages?
Would you like your blog theme language to be the same as the language in which your wrote your post or page?

With this plugin you can set the language of your blog per post and also per page, that is if your blog is in English and you wrote a post or a page in Spanish or Arabic you can set the language of your blog to match that post’s or page’s language, so when your visitors open that post or page they will see your blog in that language. You don’t have to translate your theme and plugins if they come with translations and even it will change the direction of the view to RTL (Right-to-Left) if your language is RTL based.

  • The plugin does not provide any translations, it only changes the themes and plugins translation language if they provide there own translations.
  • The available languages are only the languages that WordPress already recognizes and supports.
  • The plugin only works for posts and pages, the front page will show in the blog default language.


  • The settings page of the plugin where you add needed languages.
  • The “Post Language” box is used to set the post language from the post edit page.
  • The home page shows in the blog default language.
  • Example of a post in Dutch (Deutsch)
  • Example of a post in Azerbaijan (گؤنئی آذربایجان)
  • Example of a post in Arabic (عربي)
  • Example of a post in Brazilian Portuguese (Português do Brasil)
  • Example of a post in Spanish (Español)


  1. Search for the plugin from within the blog plugin admin page, or manually upload the plugin folder to the /wp-content/plugins/ directory.
  2. Install and Activate the plugin.
  3. Go to Settings -> “Per Post Language” and add your languages.

To use it simply go to the post edit page and select the language from the “Post Language” box.

IMPORTANT: If you use server caching or have a caching plugin, you might need to delete all caches after installing or updating this plugin.


Q: I installed this plugin but my theme or plugin still shows in the default blog language, why?

Check if your theme or plugin has support for your language. Also if switching to RTL language make sure your theme has RTL support. (All WordPress default themes has support for LTR & RTL and translations for many languages)

Q: I use a plugin which has support for my language but that plugin still shows in the default language?

Some plugins are developed to load the translations very early and before the post is loaded so they only see the default language. Contact the plugin developers or create a support ticket and ask them to delay the loading of the translations, also send them this link:


February 24, 2023
This plugin provides a small way to solve multilingual websites, specify different language tags on different pages or articles, and it can also work normally on WordPress 6.1.1
July 17, 2018
Although the plugin has not been updated for two years, I gave it a try. It is exactly what I needed to get the Google Charts displaying the right thousands separator on a website with pages in either Dutch or English 12.000,00 in Europe 12,000.00 in English notation The plugin changed the tag <html lang=”en-US”> which is something that not can be done by adding extra meta tags in the header section.
September 16, 2017
Really great plugin. Have my blog with recipes for my and nearby countries. This plugin is just the one I needed to support foreign language nested into my whole blog in my local language. Also I wrote my own theme detecting post language and displaying flags depending on a post language (please see flags before the titles on main front page). All my recommendations!
This plugin does a great job when all you want is to have a page in a different language. Since it changes the WordPress locale, it affects the HTML language attributes, the language attributes, generated by SEO/OpenGraph/sharing plugins, etc. which is great. I was just researching the proper action hook to use to switch the locale per post or page, when I found out it has been already done and packaged in plugin. It saved me an hour or two developing my own solution.
Read all 9 reviews

Contributors & Developers

“Per Post Language” is open source software. The following people have contributed to this plugin.


“Per Post Language” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Per Post Language” into your language.

Interested in development?

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



  • Set the language direction of the editing page for posts and pages if your language is RTL, that can be done by setting the direction of your language from settings page. The direction only effect the title and the post body, the rest follows the main default blog language direction.


  • Now you can set the language for Pages also.
  • Language translation fix to be compatible with WordPress translation service
  • A visual notifications for language download status.


  • Bug fix, make the plugin react only on posts and not pages.


  • Initial release.