To show quantity messages in each visitor’s language with WPML or Polylang, wrap every language version in the [wpfmmsq_translate] shortcode inside the message fields at WPFactory > Quantity Manager in Min Max Step Quantity Limits Manager for WooCommerce. Only the block matching the current language is shown. This is free.
Before you start #
- WooCommerce, active.
- WPML or Polylang, active and configured with your languages.
Where to use it #
You can place the shortcode in any message field, for example the minimum, maximum, step or allowed-quantity messages. It also works in the Quantity Info content boxes, the Price Unit text and the dropdown label templates. The Language Guide note in the General section shows the same syntax.
Step by step #
- Go to WPFactory > Quantity Manager (also reachable at WooCommerce > Settings > Product Quantity) and open the section whose message you want to translate, for example Fixed Quantity.
- Replace the Message text with one block per language, as shown below.
- Add a fallback block for languages you have not written.
- Click Save changes, then test the message on the front end in each language.
One block per language #
Use a two-letter language code and wrap the message for that language:
[wpfmmsq_translate lang="EN"]Allowed quantity for %product_title% is %allowed_quantity%. Your current quantity is %quantity%.[/wpfmmsq_translate]
Repeat the block with a different code (for example lang="ES" for Spanish or lang="DE" for German) for each language you support. Put the blocks one after another in the same field.
Fallback for other languages #
Add a fallback block for any language you have not written a message for:
[wpfmmsq_translate not_lang="EN,DE"]Default message for other languages.[/wpfmmsq_translate]
One-line form #
For short texts, use lang_text for the listed languages and not_lang_text for all others:
[wpfmmsq_translate lang="EN,DE" lang_text="Text for English and German" not_lang_text="Text for other languages"]
Shortcode attributes #
| Attribute | Purpose |
|---|---|
lang |
Show the wrapped text only for these language codes (comma separated). |
not_lang |
Show the wrapped text for every language except these codes. |
lang_text |
One-line form: text for the languages in lang. |
not_lang_text |
One-line form: text for all other languages. |
Language codes are not case sensitive, so EN and en both match. The current language is read from WPML or Polylang.
Note: the older [alg_wc_pq_translate] tag still works as an alias but is deprecated since v5.3.1. Use [wpfmmsq_translate]. The Language Guide note in General still shows the old tag.
If it does not work #
- The message is blank: no block matches the current language. Add a
not_langfallback. - Every language shows at once: a closing
[/wpfmmsq_translate]tag is missing, so the blocks are not separated. - Only one language ever shows: WPML or Polylang is not reporting a language on that page. Without a detected language,
langblocks are hidden andnot_langblocks are shown.
FAQ #
Do placeholders work inside the translated text? #
Yes. Placeholders such as %product_title% are replaced in every language block. See the message placeholders reference.
Can I translate the messages with WPML String Translation instead? #
The documented method is the [wpfmmsq_translate] shortcode, which keeps all languages in one field.
Is multilingual support a Pro feature? #
No, the translate shortcode is free. See all shortcodes in Quantity Manager shortcodes.
Need a hand? #
Our team answers every ticket on the Quantity Manager support forum.

