Right-to-Left Fixes for Lists, Quotes and Tables
Corrects common right-to-left layout problems in post content, such as list indents, blockquote borders, table alignment and image floats, using logical CSS properties.
Snippet Library
Snippets for multilingual sites: language switchers, translated strings and per-language behavior with WPML, Polylang and similar plugins. For sites that serve readers in more than one language.
Corrects common right-to-left layout problems in post content, such as list indents, blockquote borders, table alignment and image floats, using logical CSS properties.
Makes the site search return results from every Polylang language instead of only the current one, so visitors find content that has not been translated yet.
Redirects visitors who hit a missing page in a secondary Polylang language to that language's homepage, so they are not dropped onto a 404 page.
When a visitor hits a missing page in a non-default WPML language, sends them to the homepage of that language instead of a 404, keeping them in their language.
Adds a "Page language" box to the editor so a single post or page written in another language gets the correct lang attribute (and text direction) for screen readers, spell checkers and search engines.
Adds a [wpide_lang only="fr,de"]...[/wpide_lang] shortcode that shows the enclosed text only when the page is displayed in one of those languages, for small differences between translations.
Converts post dates and times on the page into each visitor's local timezone and language format in the browser, so an event posted for 18:00 London reads 19:00 in Paris.
Adds a [wpide_wpml_field] shortcode that displays a custom field from the current-language version of any post or page, so one shortcode works in every language.
Hides the "_load_textdomain_just_in_time was called incorrectly" debug notice (added in WordPress 6.7) for plugins you cannot fix yourself, keeping debug logs readable.
Shows a different site title and tagline for each language the site is displayed in, without a translation plugin, by mapping locales to text.
Pre-fills the title, content and excerpt of a new translation with the source post's text when you click the "+" icon in Polylang, so translators can work over the original instead of an empty editor.
Keeps visitors on the homepage they asked for instead of Polylang redirecting them to another language based on their browser, which also avoids caching and SEO surprises.
Shows a small, dismissible banner when the visitor's browser language differs from the page language and a translated version exists (read from the page's hreflang links), with a link to switch.
Lets visitors switch the theme and plugin interface language with a ?lang=fr_FR link; the choice is remembered in a cookie and limited to languages you allow.
Shows a slim announcement bar at the top of every page whose text you translate in WPML > String Translation, so each language gets its own message.
Registers a list of your own phrases in Languages > Translations and adds a [wpide_pll_string name="..."] shortcode to show each one in the current language.
Adds a [wpide_t name="..."]Text[/wpide_t] shortcode that registers its text in WPML String Translation and shows the translation, ideal for short phrases in widgets, footers and page builder text.
Registers chosen Customizer (theme_mod) text settings, such as a footer copyright or header phone number, in WPML String Translation and shows the translated value in each language.
Makes Polylang pick the language set in a logged-in user's profile when it decides which language to show them on the homepage, instead of relying on browser settings.
Shows a completely different menu in a theme location for each WPML language, for sites whose language versions have different structures rather than translated copies.