SleekPixel for Polylang: per-locale share cards for translated posts
Polylang stores translations as linked posts grouped by a language taxonomy term. SleekPixel reads pll_get_post_language for the current request and renders a per-locale 1200 by 630 OG image, so a German visitor sees a German card with the German headline and a French visitor sees the French version, all from the same template.
♾️ Lifetime License available
Bind one template to all Polylang translations
Polylang implements multilingual WordPress by treating each translation as a separate post linked through a custom language taxonomy. The function pll_get_post_language() returns the locale for any post ID, pll_get_post_translations() returns the sibling translations, and the active language for the current request lives on the global $polylang object.
SleekPixel reads pll_get_post_language() for the post being requested and selects the language variant of your template automatically. The headline slot reads the post title in the active locale, the brand slot pulls from the per-language site title configured in Polylang settings, and the corner mark renders the locale code like DE or fr_FR.
For multi-locale documentation sites this matters. A 240 article knowledge base translated into 6 languages produces 1,440 unique share previews without anyone manually building one per article. Existing share counts on the original URLs remain intact across every regenerate cycle.
Workflow
From locale taxonomy to PNG in four steps
Pick the Polylang template
Map translation fields
Style and preview locales
Ship live and cache
Output
Sample Polylang translated post share
An OG card for a German translation showing the German headline, a DE corner mark, and the German site title in the brand slot, all resolved through Polylang's translation API.
Comparison
Default theme OG vs SleekPixel for Polylang
Default theme OG image
- Polylang ships translation routing but leaves OG images to the theme default per locale
- Theme defaults rarely localise the brand label or site title across translations
- Manually building locale specific OG images per article kills any multilingual launch
- Hreflang exists on the link layer but social preview metadata stays unlocalized
- Per-language site titles in Polylang settings never reach the share preview automatically
SleekPixel
-
Resolves the active language with
pll_get_post_language()per request - Per-language site title from Polylang settings renders in the brand slot
-
Locale code corner mark uses the WordPress locale like
de_DEorfr_FR -
Each translation cache file under
uploads/sleekpixel/polylang/{locale}/on disk -
Cache invalidates on
pll_save_postso edited translations refresh shares
Features
What SleekPixel gives you for Polylang
One template, every locale
A single Polylang template handles every translation of every post without manual variants. The active locale resolves at render time via pll_get_post_language, and the localized site title, accent, and corner mark slot into the.
Distinct URL, distinct image
Polylang assigns each translation its own URL through pretty permalinks or subdomains. SleekPixel matches that by giving each translation its own cached PNG, so Facebook unfurling the German URL shows the German card and Twitter.
Per-language site title
Polylang lets you set a different site title per language in its strings translation panel. SleekPixel reads that table and renders the language specific site title in the brand slot, so a help center localized as Help in.
Use cases
Where Polylang + SleekPixel pays off
Multilingual knowledge bases
Help centers translated into multiple languages get a per-locale share card for every article, so links shared in localised support communities unfurl with native language headlines automatically.
Localised landing pages
Marketing campaigns running in 5 or 10 locales benefit from a per-language share preview without duplicate design work. The template handles all locales while the brand team keeps a single source of.
Translated blog posts
News and blog posts translated through Polylang share with locale specific cards, so a French reader pasting a link into a French community sees the French headline and brand instead of the English.
The bigger picture
Why multilingual sites need per-locale share images
Polylang sites do the hard work of translating WordPress content properly. Each translation gets its own URL, its own slug, its own meta description, and proper hreflang annotations between siblings. Then the social share preview falls back to the theme default, which is usually a single image with English copy regardless of which language the reader is browsing.
That single inconsistency undoes a lot of the localisation polish. A French reader sharing a French article into a French Slack channel sees an English brand label on the preview, which signals exactly the wrong thing. SleekPixel closes the loop by rendering one PNG per translation, matching the language of the URL the crawler hit.
The brand label, the headline, and even the corner mark all swap per locale. For a 240 article knowledge base translated into six languages this means 1,440 unique share previews maintained by zero manual layout work. Polylang already stores everything needed in its taxonomies and string translation tables, and SleekPixel reads those structures directly.
There is no extra cron, no extra build step, and no separate per-language pipeline.
Questions
Common questions about SleekPixel for Polylang
Both. The integration relies on the public Polylang PHP API which is identical across free and Pro versions, like pll_get_post_language, pll_get_post_translations, and pll_default_language. Pro features like duplicate post translation and string translation across plugins continue to work and inform the rendered cards transparently.
 Polylang sets the current language on its global object based on the URL hit, and SleekPixel reads that during the template render. For specific post requests it also calls pll_get_post_language on the queried object ID directly, which guarantees the rendered card matches the post being shown rather than a stale request state.
 Polylang treats draft translations as draft posts in its language taxonomy. SleekPixel only renders cards for published translations by default, which matches what social crawlers can fetch publicly anyway. Draft translations get a fallback to the source language card so internal links to draft URLs still preview reasonably.
 Yes, Polylang exposes a strings translation panel where the WordPress site title can be translated per language. SleekPixel reads that translated value through pll_translate_string for the active locale and uses it in the brand slot, ensuring the brand label always matches the user-facing site title for that language.
 Yes. SleekPixel only writes the og:image and twitter:image meta tags by default, leaving hreflang, canonical URLs, schema, and other SEO concerns to whatever plugin handles them. Yoast SEO, Rank Math, and SEOPress all coexist cleanly because SleekPixel never tries to manage hreflang or canonical link tags.
 Yes, the template offers a flag variant that uses Polylang's flag URL helper to render a small flag icon in the corner mark slot. The flag variant is useful for marketing landing pages where the icon reads instantly across cultures, especially in regions where locale codes are not commonly recognised.
 The template ships with an RTL variant that mirrors the layout for languages flagged as RTL by WordPress, like Arabic and Hebrew. Headline and brand label flip to right alignment, the corner mark moves to the opposite corner, and the accent stripe runs along the right edge so the card reads naturally for native speakers.
 Disabling a language in Polylang hides its translations from the front end, but the cached PNGs remain on disk to avoid surprising deletes during admin tinkering. Use the SleekPixel admin or WP-CLI sleek pixel prune to clear orphaned locale folders explicitly once you have confirmed the language removal is permanent.
 Pricing
More than 1000+
happy customers
Explore our flexible licensing options tailored to your needs. Upgrade your license anytime to access more features, or opt for a lifetime license for ongoing value, including lifetime updates and lifetime support. Our hassle-free upgrade process ensures that our platform can grow with you, starting from whichever plan you choose.
Lifetime ♾️
Most popular
EUR
once
- Unlimited websites
- Lifetime updates
- Lifetime support
...or get the Bundle Deal
and save €250 🎁
The Bundle (unlimited sites)
Pay once, own it forever
Elevate your WordPress site with our exclusive plugin bundle that includes all of our premium plugins in one package. Enjoy lifetime updates and lifetime support. Save significantly compared to buying plugins individually.
What’s included
-
SleekAI
-
SleekByte
-
SleekMotion
-
SleekPixel
-
SleekRank
-
SleekView
€749
Continue to checkoutBrowse more
- eBay listing images
- Facebook cover photos
- Pinterest video pin covers
- Open Graph images
- Facebook post images
- Stan Store cover
- Facebook ad images
- Mastodon profile banners
- Xiaohongshu cover images
- Snapchat Spotlight covers
- Bluesky profile banners
- Klaviyo email headers
- Bluesky link cards
- X social cards
- Pinterest product pin covers