Documentation
Reference

Multilingual sites: WPML and Polylang

From plugin v1.37.13

Multilingual sites: WPML and Polylang

MisePress Recipes supports multilingual WordPress workflows with WPML and Polylang.

What is language-aware

  • Recipe custom post type (mp_recipe) is marked as translatable.
  • Recipe taxonomies are marked as translatable:
  • Allergens
  • Ingredients
  • Cuisines
  • Courses
  • Diets / seasons when available
  • Recipe archive queries, AJAX search, Smart Search autocomplete, related recipes, collections, Smart Feed recommendations and REST search use the current language.
  • Saved recipe states, shopping-list recipe state, private notes and saved collections use a canonical recipe ID internally, then display the translated recipe when available.
  • Recipe schema can include translated recipe content and alternate language URLs.
  • Admin-configurable frontend strings such as search placeholders, empty-state text, related recipe titles, author heading text, Smart Feed title and email capture labels are registered for string translation where supported.

WPML setup notes

  1. In WPML settings, set Recipes as translatable.
  2. Set MisePress recipe taxonomies as translatable.
  3. Translate each recipe normally through WPML.
  4. Translate custom strings from WPML → String Translation under the MisePress Recipes context.
  5. Create/translate shortcode pages such as Favourites, Shopping List, Saved Collections and My Recipe Notes for each language if you want language-specific page URLs.

MisePress includes a wpml-config.xml file so WPML can understand which custom fields should be copied and which should be translated.

Polylang setup notes

  1. In Polylang settings, enable translations for Recipes and MisePress recipe taxonomies.
  2. Translate recipes and taxonomy terms as normal.
  3. Translate registered MisePress strings from Polylang string translations.
  4. Create translated shortcode pages for each language if needed.

User-specific features

Favourites, shopping-list recipe state, private notes and saved collections are stored against a canonical recipe ID so they do not disappear just because the visitor changes language. On the frontend, MisePress attempts to display the translated recipe version for the current language.

Recommendation/search behaviour

Smart Search, related recipes and Smart Feed avoid mixing recipe languages by filtering recipe queries to the current language where the multilingual plugin exposes the active language.

Support note

If you use custom translation rules, custom post-type slug translations, or a heavily cached multilingual site, run MisePress Recipes → System Health and check the multilingual/cache notes.

Product context

Need the high-level overview? Start with MisePress Recipes, the WordPress recipe plugin.