ਆਪਣੀ ਐਪ ਜਾਂ ਵੈੱਬਸਾਈਟ ਵਿੱਚ ਕਈ ਭਾਸ਼ਾਵਾਂ ਕਿਵੇਂ ਜੋੜੀਏ
ਐਪ ਵਿੱਚ ਕਈ ਭਾਸ਼ਾਵਾਂ ਜੋੜਨ ਲਈ, ਇੰਟਰਫੇਸ ਦਾ ਹਰ ਲਿਖਤੀ ਹਿੱਸਾ ਅਨੁਵਾਦ ਫਾਈਲਾਂ ਵਿੱਚ ਲੈ ਜਾਓ (ਹਰ ਭਾਸ਼ਾ ਲਈ ਇੱਕ), ਉਹਨਾਂ ਨੂੰ ਇੱਕ i18n ਲਾਇਬ੍ਰੇਰੀ ਨਾਲ ਲੋਡ ਕਰੋ, ਅਤੇ ਇੱਕ ਭਾਸ਼ਾ ਬਦਲਣ ਵਾਲਾ ਬਟਨ ਜੋੜੋ ਜੋ ਚੋਣ ਯਾਦ ਰੱਖੇ। ਜਿਹੜੇ ਜਨਤਕ ਪੰਨੇ ਤੁਸੀਂ ਖੋਜ ਵਿੱਚ ਲੱਭਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਉਹਨਾਂ ਲਈ ਹਰ ਭਾਸ਼ਾ ਨੂੰ ਆਪਣਾ URL ਦਿਓ, ਜਿਵੇਂ /fr/, ਅਤੇ hreflang ਟੈਗਾਂ ਰਾਹੀਂ ਵਰਜ਼ਨਾਂ ਨੂੰ ਜੋੜੋ। ਫਿਰ ਉਹ ਹਿੱਸੇ ਸੰਭਾਲੋ ਜੋ ਲੋਕ ਅਕਸਰ ਭੁੱਲ ਜਾਂਦੇ ਹਨ: ਮਿਤੀਆਂ, ਨੰਬਰ ਅਤੇ ਮੁਦਰਾ, ਕੁਝ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਲੰਮਾ ਪਾਠ, ਸੱਜਿਓਂ-ਖੱਬੇ ਲਿਪੀਆਂ, ਅਤੇ ਤੁਹਾਡੇ ਡੇਟਾਬੇਸ ਵਿੱਚ ਸਟੋਰ ਹੋਈ ਸਮੱਗਰੀ।
ਤੁਸੀਂ ਜੋ ਸ਼ਬਦ ਸੁਣੋਗੇ
- ਇੰਟਰਨੈਸ਼ਨਲਾਈਜ਼ੇਸ਼ਨ (i18n): ਕੋਡ ਨੂੰ ਕਿਸੇ ਵੀ ਭਾਸ਼ਾ ਲਈ ਤਿਆਰ ਕਰਨਾ: ਕੋਈ ਪੱਕਾ ਲਿਖਿਆ ਪਾਠ ਨਹੀਂ, ਥਾਂ ਮੁਤਾਬਕ ਫਾਰਮੈਟਿੰਗ, ਲਚਕੀਲੇ ਲੇਆਉਟ। "18" ਦਾ ਮਤਲਬ ਹੈ i ਅਤੇ n ਵਿਚਕਾਰਲੇ 18 ਅੱਖਰ।
- ਲੋਕਲਾਈਜ਼ੇਸ਼ਨ (l10n): ਐਪ ਨੂੰ ਕਿਸੇ ਖ਼ਾਸ ਭਾਸ਼ਾ ਜਾਂ ਬਾਜ਼ਾਰ ਲਈ ਢਾਲਣਾ, ਜ਼ਿਆਦਾਤਰ ਅਨੁਵਾਦ, ਕਈ ਵਾਰ ਮੁਦਰਾ, ਤਸਵੀਰਾਂ ਅਤੇ ਕਾਨੂੰਨੀ ਪਾਠ ਵੀ।
- ਲੋਕੇਲ: ਇੱਕ ਭਾਸ਼ਾ ਅਤੇ ਜੇ ਚਾਹੋ ਤਾਂ ਇਲਾਕਾ, ਜਿਵੇਂ
en-GBਜਾਂpt-BR।
i18n ਇੱਕ ਵਾਰ ਕਰ ਲਓ, ਤਾਂ ਹਰ ਨਵੀਂ ਭਾਸ਼ਾ ਜੋੜਨਾ ਜ਼ਿਆਦਾਤਰ ਸਿਰਫ਼ ਅਨੁਵਾਦ ਦਾ ਕੰਮ ਰਹਿ ਜਾਂਦਾ ਹੈ।
ਵਿਕਲਪ ਅਤੇ ਸਮਝੌਤੇ
| ਤਰੀਕਾ | ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ | ਕਿਸ ਲਈ ਚੰਗਾ | ਸਮਝੌਤਾ |
|---|---|---|---|
| i18n ਲਾਇਬ੍ਰੇਰੀ + ਅਨੁਵਾਦ ਫਾਈਲਾਂ (ਜਿਵੇਂ react-i18next, next-intl, vue-i18n) | ਪਾਠ ਹਰ ਲੋਕੇਲ ਲਈ JSON ਫਾਈਲਾਂ ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ; ਕੰਪੋਨੈਂਟ ਕੀ ਰਾਹੀਂ ਲੱਭਦੇ ਹਨ | ਜ਼ਿਆਦਾਤਰ ਐਪਾਂ | ਸ਼ੁਰੂਆਤੀ ਰੀਫੈਕਟਰ; ਸੰਭਾਲਣ ਲਈ ਅਨੁਵਾਦ |
| ਅਨੁਵਾਦ ਪ੍ਰਬੰਧਨ ਸਿਸਟਮ (ਜਿਵੇਂ Crowdin, Lokalise, Phrase) | ਅਨੁਵਾਦਕਾਂ ਲਈ ਹੋਸਟ ਕੀਤਾ ਐਡੀਟਰ, ਤੁਹਾਡੀਆਂ ਫਾਈਲਾਂ ਨਾਲ ਸਿੰਕ | ਕਈ ਭਾਸ਼ਾਵਾਂ, ਕਈ ਅਨੁਵਾਦਕ | ਭੁਗਤਾਨ ਵਾਲਾ; ਇੱਕ ਹੋਰ ਟੂਲ ਲਗਾਉਣਾ ਪੈਂਦਾ ਹੈ |
| ਬਿਲਡ ਦੇ ਸਮੇਂ ਮਸ਼ੀਨ ਜਾਂ AI ਅਨੁਵਾਦ | API ਨਾਲ ਖਰੜੇ ਅਨੁਵਾਦ ਬਣਾਓ, ਫਿਰ ਜਾਂਚੋ | ਤੇਜ਼ੀ ਨਾਲ ਕਈ ਭਾਸ਼ਾਵਾਂ | ਕੁਆਲਟੀ ਜਾਂਚਣੀ ਪੈਂਦੀ ਹੈ; API ਖਰਚਾ |
| ਬ੍ਰਾਊਜ਼ਰ ਜਾਂ ਵਿਜੇਟ ਦਾ ਆਟੋ-ਅਨੁਵਾਦ | ਵਿਜ਼ਿਟਰ ਦਾ ਬ੍ਰਾਊਜ਼ਰ ਪੰਨੇ ਨੂੰ ਉਸੇ ਵੇਲੇ ਅਨੁਵਾਦ ਕਰਦਾ ਹੈ | ਤੁਹਾਡੇ ਕਾਬੂ ਤੋਂ ਬਾਹਰ ਕੁਝ ਨਹੀਂ | ਕੁਆਲਟੀ ਤੁਹਾਡੇ ਹੱਥ ਵਿੱਚ ਨਹੀਂ; ਅਨੁਵਾਦ ਕੀਤੇ ਪੰਨੇ ਤੁਹਾਡੇ ਵਜੋਂ ਇੰਡੈਕਸ ਨਹੀਂ ਹੁੰਦੇ |
| ਹਰ ਭਾਸ਼ਾ ਲਈ ਵੱਖਰੀ ਸਾਈਟ | ਹਰ ਬਾਜ਼ਾਰ ਲਈ ਸਾਈਟ ਦੀ ਨਕਲ | ਬਹੁਤ ਵੱਖਰੇ ਬਾਜ਼ਾਰ | ਹਰ ਚੀਜ਼ ਦੋ ਵਾਰ ਸੰਭਾਲਣੀ ਪੈਂਦੀ ਹੈ |
ਜ਼ਿਆਦਾਤਰ ਐਪਾਂ ਲਈ, ਅਨੁਵਾਦ ਫਾਈਲਾਂ ਵਾਲੀ ਮਿਆਰੀ i18n ਲਾਇਬ੍ਰੇਰੀ ਸਹੀ ਆਧਾਰ ਹੈ। ਚਾਹੋ ਤਾਂ ਮਸ਼ੀਨ ਜਾਂ AI ਨਾਲ ਖਰੜੇ ਬਣਾਓ, ਫਿਰ ਜੋ ਗਾਹਕ ਸਭ ਤੋਂ ਵੱਧ ਦੇਖਦੇ ਹਨ ਉਸ ਨੂੰ ਕਿਸੇ ਮਾਹਿਰ ਬੋਲਣ ਵਾਲੇ ਤੋਂ ਜਾਂਚਵਾਓ।
ਬਹੁ-ਭਾਸ਼ਾਈ ਐਪ ਦੇ ਹਿੱਸੇ
ਅਨੁਵਾਦ ਫਾਈਲਾਂ
<h1>Welcome back</h1> ਦੀ ਥਾਂ ਕੋਡ ਕਹਿੰਦਾ ਹੈ t('dashboard.welcome'), ਅਤੇ ਹਰ ਲੋਕੇਲ ਦੀ ਇੱਕ ਫਾਈਲ ਵਿੱਚ ਪਾਠ ਹੁੰਦਾ ਹੈ:
{
"dashboard": {
"welcome": "Welcome back, {{name}}",
"items_one": "{{count}} item",
"items_other": "{{count}} items"
}
}
ਵੇਰੀਏਬਲਾਂ ਲਈ ਪਲੇਸਹੋਲਡਰ ਵਰਤੋ, ਵਾਕ ਦੇ ਟੁਕੜੇ ਜੋੜ ਕੇ ਨਹੀਂ, ਕਿਉਂਕਿ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਸ਼ਬਦਾਂ ਦਾ ਕ੍ਰਮ ਵੱਖਰਾ ਹੁੰਦਾ ਹੈ। ਅਤੇ ਲਾਇਬ੍ਰੇਰੀ ਦੇ ਬਹੁਵਚਨ ਨਿਯਮ ਵਰਤੋ: ਅੰਗਰੇਜ਼ੀ ਵਿੱਚ ਦੋ ਰੂਪ ਹਨ (1 item, 2 items), ਪਰ ਕੁਝ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਤਿੰਨ, ਚਾਰ ਜਾਂ ਵੱਧ ਰੂਪ ਹੁੰਦੇ ਹਨ।
ਮਿਤੀਆਂ, ਨੰਬਰ ਅਤੇ ਪੈਸੇ ਦੀ ਫਾਰਮੈਟਿੰਗ
ਇਹਨਾਂ ਨੂੰ ਹੱਥੀਂ ਫਾਰਮੈਟ ਨਾ ਕਰੋ। ਬ੍ਰਾਊਜ਼ਰ ਦਾ ਬਣਿਆ Intl API ਕਿਸੇ ਵੀ ਲੋਕੇਲ ਲਈ ਫਾਰਮੈਟ ਕਰਦਾ ਹੈ: ਅੰਗਰੇਜ਼ੀ ਵਿੱਚ 1,234.5 ਜਰਮਨ ਵਿੱਚ 1.234,5 ਬਣ ਜਾਂਦਾ ਹੈ; ਮਿਤੀਆਂ ਦਾ ਕ੍ਰਮ ਬਦਲਦਾ ਹੈ; ਮੁਦਰਾ ਦਾ ਚਿੰਨ੍ਹ ਥਾਂ ਬਦਲਦਾ ਹੈ। ਮਿਤੀਆਂ ਨੂੰ UTC ਵਿੱਚ ਸਟੋਰ ਕਰੋ, ਪੈਸੇ ਨੂੰ ਮੁਦਰਾ ਕੋਡ ਨਾਲ ਨੰਬਰ ਵਜੋਂ ਰੱਖੋ, ਅਤੇ ਸਿਰਫ਼ ਦਿਖਾਉਣ ਵੇਲੇ ਫਾਰਮੈਟ ਕਰੋ।
ਫੈਲਣ ਵਾਲਾ ਲੇਆਉਟ
ਅਨੁਵਾਦਿਤ ਪਾਠ ਅਕਸਰ ਅੰਗਰੇਜ਼ੀ ਨਾਲੋਂ ਲੰਮਾ ਹੁੰਦਾ ਹੈ, ਖ਼ਾਸ ਕਰਕੇ ਜਰਮਨ ਅਤੇ ਫਿਨਿਸ਼ ਵਿੱਚ। ਬਟਨਾਂ ਦੀ ਪੱਕੀ ਚੌੜਾਈ ਅਤੇ ਕੱਟੇ ਹੋਏ ਲੇਬਲਾਂ ਤੋਂ ਬਚੋ, ਅਤੇ ਆਪਣੀ ਸਭ ਤੋਂ ਲੰਮੀ ਭਾਸ਼ਾ ਨਾਲ ਜਾਂਚੋ।
ਸੱਜਿਓਂ-ਖੱਬੇ ਭਾਸ਼ਾਵਾਂ
ਅਰਬੀ, ਹਿਬਰੂ, ਫ਼ਾਰਸੀ ਅਤੇ ਉਰਦੂ ਸੱਜਿਓਂ ਖੱਬੇ ਪੜ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। ਇਹਨਾਂ ਲੋਕੇਲਾਂ ਲਈ ਪੰਨੇ 'ਤੇ dir="rtl" ਲਗਾਓ ਅਤੇ CSS ਲੌਜੀਕਲ ਪ੍ਰਾਪਰਟੀਆਂ ਵਰਤੋ (margin-left ਦੀ ਥਾਂ margin-inline-start; Tailwind ਵਿੱਚ ml-4 ਦੀ ਥਾਂ ms-4), ਤਾਂ ਜੋ ਲੇਆਉਟ ਆਪਣੇ ਆਪ ਉਲਟ ਜਾਵੇ। ਦਿਸ਼ਾ ਦੱਸਣ ਵਾਲੇ ਆਈਕਨ, ਜਿਵੇਂ ਤੀਰ, ਵੀ ਪਲਟਣੇ ਪੈਣਗੇ।
ਭਾਸ਼ਾ ਬਦਲਣ ਵਾਲਾ ਅਤੇ ਪਛਾਣ
ਹਰ ਪੰਨੇ 'ਤੇ ਇੱਕ ਬਦਲਣ ਵਾਲਾ ਦਿਖਾਓ, ਜਿਸ 'ਤੇ ਹਰ ਭਾਸ਼ਾ ਦਾ ਆਪਣਾ ਨਾਮ ਲਿਖਿਆ ਹੋਵੇ ("ਪੰਜਾਬੀ", "Deutsch", "Français", "العربية"), ਝੰਡੇ ਨਹੀਂ, ਕਿਉਂਕਿ ਝੰਡੇ ਦੇਸ਼ਾਂ ਨੂੰ ਦਰਸਾਉਂਦੇ ਹਨ, ਭਾਸ਼ਾਵਾਂ ਨੂੰ ਨਹੀਂ। ਪਹਿਲੀ ਵਾਰ ਆਉਣ 'ਤੇ ਬ੍ਰਾਊਜ਼ਰ ਦੀ ਪਸੰਦੀਦਾ ਭਾਸ਼ਾ ਪਛਾਣ ਕੇ ਇੱਕ ਵਰਜ਼ਨ ਦਾ ਸੁਝਾਅ ਦਿਓ, ਪਰ ਵਿਜ਼ਿਟਰ ਦੀ ਸਾਫ਼ ਚੋਣ ਨੂੰ ਸਭ ਤੋਂ ਉੱਪਰ ਰੱਖੋ ਅਤੇ ਯਾਦ ਰੱਖੋ।
URL ਅਤੇ SEO
ਜਿਹੜੇ ਪੰਨੇ ਤੁਸੀਂ ਖੋਜ ਨਤੀਜਿਆਂ ਵਿੱਚ ਚਾਹੁੰਦੇ ਹੋ, ਉਹਨਾਂ ਲਈ ਹਰ ਭਾਸ਼ਾ ਦਾ ਆਪਣਾ URL ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਸਤੰਬਰ 2026 ਤੱਕ, ਬਹੁ-ਭਾਸ਼ਾਈ ਸਾਈਟਾਂ ਲਈ Google ਦੀ ਗਾਈਡ ਇਹ ਹੈ:
- ਹਰ ਭਾਸ਼ਾ ਲਈ ਵੱਖਰੇ URL — ਸਬ-ਡਾਇਰੈਕਟਰੀਆਂ (
example.com/fr/) ਸਭ ਤੋਂ ਸੌਖੀਆਂ ਹਨ; ਸਬ-ਡੋਮੇਨ ਅਤੇ ਦੇਸ਼ ਵਾਲੇ ਡੋਮੇਨ ਵੀ ਚੱਲਦੇ ਹਨ। URL ਪੈਰਾਮੀਟਰ (?lang=fr) ਦੀ ਸਿਫ਼ਾਰਸ਼ ਨਹੀਂ। - ਸਿਰਫ਼ ਕੂਕੀ ਜਾਂ ਬ੍ਰਾਊਜ਼ਰ ਸੈਟਿੰਗ ਨਾਲ ਭਾਸ਼ਾ ਨਾ ਬਦਲੋ; Google ਦਾ ਕ੍ਰਾਲਰ ਹੋਰ ਵਰਜ਼ਨ ਕਦੇ ਨਾ ਦੇਖ ਸਕੇ।
- ਭਾਸ਼ਾ ਦੇ ਆਧਾਰ 'ਤੇ ਆਟੋ-ਰੀਡਾਇਰੈਕਟ ਨਾ ਕਰੋ; ਇਸ ਦੀ ਥਾਂ ਵਰਜ਼ਨਾਂ ਵਿਚਕਾਰ ਲਿੰਕ ਦਿਓ।
- hreflang ਵਰਤੋ ਤਾਂ ਜੋ Google ਨੂੰ ਪਤਾ ਲੱਗੇ ਕਿ ਕਿਹੜੇ ਪੰਨੇ ਇੱਕ-ਦੂਜੇ ਦੇ ਅਨੁਵਾਦ ਹਨ। ਹਰ ਵਰਜ਼ਨ ਨੂੰ ਆਪਣੇ ਆਪ ਅਤੇ ਬਾਕੀ ਸਾਰਿਆਂ ਨੂੰ ਸੂਚੀਬੱਧ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ ਟੈਗ ਨਜ਼ਰਅੰਦਾਜ਼ ਹੋ ਸਕਦੇ ਹਨ। ਫਾਲਬੈਕ ਪੰਨੇ ਲਈ
x-defaultਸ਼ਾਮਲ ਕਰੋ। - Google ਪੰਨੇ ਦੀ ਭਾਸ਼ਾ ਉਸ ਦੇ ਦਿਖਣ ਵਾਲੇ ਪਾਠ ਤੋਂ ਪਛਾਣਦਾ ਹੈ,
langਜਾਂ hreflang ਤੋਂ ਨਹੀਂ, ਇਸ ਲਈ ਸਿਰਫ਼ ਮੀਨੂ ਨਹੀਂ, ਪੂਰਾ ਪੰਨਾ ਅਨੁਵਾਦ ਕਰੋ।
ਫਿਰ ਵੀ ਹਰ ਵਰਜ਼ਨ 'ਤੇ <html lang="fr"> ਲਗਾਓ: ਸਕ੍ਰੀਨ ਰੀਡਰ ਇਸ ਨਾਲ ਸਹੀ ਉਚਾਰਨ ਚੁਣਦੇ ਹਨ, ਜੋ ਕਿ ਪਹੁੰਚਯੋਗਤਾ ਦੀ ਲੋੜ ਹੈ।
ਲੌਗ-ਇਨ ਵਾਲੀਆਂ ਐਪ ਸਕ੍ਰੀਨਾਂ ਨੂੰ ਇੰਡੈਕਸ ਕਰਨ ਦੀ ਲੋੜ ਨਹੀਂ, ਇਸ ਲਈ ਉਹਨਾਂ ਲਈ ਭਾਸ਼ਾ ਯੂਜ਼ਰ ਦੀ ਪ੍ਰੋਫਾਈਲ ਵਿੱਚ ਸਟੋਰ ਕਰਨਾ ਠੀਕ ਹੈ। ਜਨਤਕ ਪੰਨਿਆਂ ਨੂੰ ਕ੍ਰਾਲ ਕਰਵਾਉਣ ਬਾਰੇ ਜਾਣਨ ਲਈ AI-ਬਣਾਈਆਂ ਵੈੱਬਸਾਈਟਾਂ ਲਈ SEO ਦੇਖੋ।
ਡੇਟਾਬੇਸ ਵਿੱਚ ਸਮੱਗਰੀ
ਇੰਟਰਫੇਸ ਦਾ ਪਾਠ ਫਾਈਲਾਂ ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ; ਉਤਪਾਦਾਂ ਦੇ ਨਾਮ, ਬਲੌਗ ਪੋਸਟਾਂ ਅਤੇ ਸ਼੍ਰੇਣੀਆਂ ਵਰਗੀ ਸਮੱਗਰੀ ਡੇਟਾਬੇਸ ਵਿੱਚ ਰਹਿੰਦੀ ਹੈ। ਦੋ ਆਮ ਤਰੀਕੇ ਹਨ:
- ਅਨੁਵਾਦ ਟੇਬਲ:
product_translations (product_id, locale, name, description)। ਸਾਫ਼ ਹੈ ਅਤੇ ਬਹੁਤ ਸਾਰੀਆਂ ਭਾਸ਼ਾਵਾਂ ਲਈ ਵਧਦਾ ਹੈ। - ਹਰ ਫੀਲਡ ਲਈ JSON ਕਾਲਮ:
name: {"en": "...", "fr": "..."}। ਕੁਝ ਭਾਸ਼ਾਵਾਂ ਲਈ ਸਰਲ।
ਤੈਅ ਕਰੋ ਕਿ ਅਨੁਵਾਦ ਨਾ ਹੋਣ 'ਤੇ ਕੀ ਹੋਵੇ, ਆਮ ਤੌਰ 'ਤੇ ਖਾਲੀ ਥਾਂ ਦਿਖਾਉਣ ਦੀ ਥਾਂ ਮੂਲ ਭਾਸ਼ਾ 'ਤੇ ਵਾਪਸ ਜਾਣਾ।
ਈਮੇਲਾਂ ਅਤੇ ਸੂਚਨਾਵਾਂ
ਹਰ ਯੂਜ਼ਰ ਦੀ ਭਾਸ਼ਾ ਸਟੋਰ ਕਰੋ ਅਤੇ ਈਮੇਲਾਂ, ਸੂਚਨਾਵਾਂ ਅਤੇ PDF ਲਈ ਵਰਤੋ। ਐਪ ਦਾ ਅਨੁਵਾਦ ਕਰਨਾ ਅਤੇ ਇਹ ਭੁੱਲ ਜਾਣਾ ਆਸਾਨ ਹੈ ਕਿ ਸਵਾਗਤੀ ਈਮੇਲ ਅਜੇ ਵੀ ਅੰਗਰੇਜ਼ੀ ਵਿੱਚ ਜਾਂਦੀ ਹੈ।
ਕੰਮ ਕਰਨ ਵਾਲੇ ਪ੍ਰੋਂਪਟ
react-i18next ਨਾਲ internationalisation ਜੋੜੋ। ਹਰ ਯੂਜ਼ਰ ਨੂੰ ਦਿਖਣ ਵਾਲਾ ਪਾਠ locales/en.json ਵਿੱਚ ਨੇਮਸਪੇਸ ਵਾਲੀਆਂ ਕੁੰਜੀਆਂ ਨਾਲ ਲੈ ਜਾਓ, ਸਟਰਿੰਗ ਜੋੜਨ ਦੀ ਥਾਂ ਇੰਟਰਪੋਲੇਸ਼ਨ ਅਤੇ ਬਹੁਵਚਨ ਨਿਯਮ ਵਰਤੋ, ਅਤੇ ਮਿਤੀਆਂ, ਨੰਬਰ ਤੇ ਕੀਮਤਾਂ ਮੌਜੂਦਾ ਲੋਕੇਲ ਅਨੁਸਾਰ Intl ਨਾਲ ਫਾਰਮੈਟ ਕਰੋ। ਅਜੇ ਕੋਈ ਸ਼ਬਦ ਨਾ ਬਦਲੋ।
ਫਰੈਂਚ ਅਤੇ ਜਰਮਨ ਜੋੜੋ। ਜਨਤਕ ਮਾਰਕੀਟਿੰਗ ਪੰਨਿਆਂ ਨੂੰ /fr/ ਅਤੇ /de/ URL ਪ੍ਰੀਫਿਕਸ ਮਿਲਣ, ਅੰਗਰੇਜ਼ੀ ਰੂਟ 'ਤੇ ਰਹੇ; ਹਰ ਪੰਨੇ 'ਤੇ hreflang ਲਿੰਕ ਹੋਣ (ਆਪਣੇ ਆਪ ਅਤੇ x-default ਸਮੇਤ), ਅਤੇ html lang ਹਰ ਪੰਨੇ ਲਈ ਵੱਖਰਾ ਹੋਵੇ। ਇੱਕ ਭਾਸ਼ਾ ਬਦਲਣ ਵਾਲਾ ਜੋੜੋ ਜੋ ਹਰ ਭਾਸ਼ਾ ਦਾ ਆਪਣਾ ਨਾਮ ਦਿਖਾਵੇ। ਲੌਗ-ਇਨ ਪੰਨਿਆਂ ਲਈ ਭਾਸ਼ਾ ਯੂਜ਼ਰ ਦੀ ਪ੍ਰੋਫਾਈਲ 'ਤੇ ਸਟੋਰ ਕਰੋ।
ਸੱਜਿਓਂ-ਖੱਬੇ ਸਹਾਇਤਾ ਨਾਲ ਅਰਬੀ ਜੋੜੋ: ਅਰਬੀ ਲਈ dir="rtl" ਸੈੱਟ ਕਰੋ, ਖੱਬੇ-ਸੱਜੇ ਮਾਰਜਨ ਅਤੇ ਪੈਡਿੰਗ ਦੀ ਥਾਂ ਲੌਜੀਕਲ ਪ੍ਰਾਪਰਟੀਆਂ ਵਰਤੋ, ਦਿਸ਼ਾ ਵਾਲੇ ਆਈਕਨ ਪਲਟੋ, ਅਤੇ ਜਾਂਚੋ ਕਿ ਫਾਰਮ ਅਤੇ ਟੇਬਲ ਅਜੇ ਵੀ ਠੀਕ ਪੜ੍ਹੇ ਜਾਂਦੇ ਹਨ।
ਕਦਮ ਦਰ ਕਦਮ
- ਆਪਣੀ ਪਹਿਲੀ ਵਾਧੂ ਭਾਸ਼ਾ ਚੁਣੋ ਅਸਲ ਮੰਗ ਦੇ ਆਧਾਰ 'ਤੇ, ਕਿ ਤੁਹਾਡੇ ਵਿਜ਼ਿਟਰ ਜਾਂ ਗਾਹਕ ਕਿੱਥੇ ਹਨ।
- ਕੋਡ ਨੂੰ internationalise ਕਰੋ: ਸਟਰਿੰਗਾਂ ਨੂੰ ਫਾਈਲਾਂ ਵਿੱਚ ਲੈ ਜਾਓ, ਬਹੁਵਚਨ ਅਤੇ
Intlਫਾਰਮੈਟਿੰਗ ਜੋੜੋ। ਇਹ ਸਿਰਫ਼ ਅੰਗਰੇਜ਼ੀ ਨਾਲ ਭੇਜੋ ਅਤੇ ਜਾਂਚੋ ਕਿ ਕੁਝ ਬਦਲਿਆ ਨਹੀਂ। - URL ਢਾਂਚਾ ਤੈਅ ਕਰੋ ਜਨਤਕ ਪੰਨਿਆਂ ਲਈ ਅਤੇ hreflang ਜੋੜੋ।
- ਅਨੁਵਾਦ ਕਰੋ: ਮਸ਼ੀਨ ਜਾਂ AI ਨਾਲ ਖਰੜਾ ਬਣਾਓ, ਫਿਰ ਕਿਸੇ ਮਾਹਿਰ ਬੋਲਣ ਵਾਲੇ ਨਾਲ ਜਾਂਚੋ। ਅਨੁਵਾਦਕਾਂ ਨੂੰ ਸੰਦਰਭ ਦਿਓ: "Book" ਇੱਕ ਸਕ੍ਰੀਨ 'ਤੇ ਨਾਂਵ ਹੈ ਅਤੇ ਦੂਜੀ 'ਤੇ ਕਿਰਿਆ।
- ਡੇਟਾਬੇਸ ਦੀ ਸਮੱਗਰੀ ਦਾ ਅਨੁਵਾਦ ਕਰੋ ਅਤੇ ਬਦਲਵੇਂ ਮੂਲ ਭਾਸ਼ਾ ਤੈਅ ਕਰੋ।
- ਬਾਕੀ ਨੂੰ ਲੋਕਲਾਈਜ਼ ਕਰੋ: ਈਮੇਲਾਂ, ਗਲਤੀ ਸੁਨੇਹੇ, ਕਾਨੂੰਨੀ ਪੰਨੇ, ਅਤੇ ਅੰਦਰ ਪਾਠ ਵਾਲੀਆਂ ਤਸਵੀਰਾਂ।
- ਹਰ ਭਾਸ਼ਾ ਨੂੰ ਫੋਨ ਦੀ ਚੌੜਾਈ 'ਤੇ ਜਾਂਚੋ, ਅਤੇ ਜੇ ਲੋੜ ਹੋਵੇ ਤਾਂ ਸੱਜਿਓਂ-ਖੱਬੇ ਨਾਲ।
- ਇੱਕ ਪ੍ਰਕਿਰਿਆ ਬਣਾਓ ਤਾਂ ਜੋ ਨਵੇਂ ਫੀਚਰ ਅਨੁਵਾਦਾਂ ਨਾਲ ਆਉਣ, ਮਹੀਨਿਆਂ ਬਾਅਦ ਨਹੀਂ।
ਆਮ ਗਲਤੀਆਂ
- ਵਾਕ ਜੋੜਨਾ (
"You have " + n + " messages"), ਜੋ ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ ਟੁੱਟ ਜਾਂਦਾ ਹੈ। - ਕੰਪੋਨੈਂਟਾਂ ਵਿੱਚ ਪੱਕਾ ਲਿਖਿਆ ਪਾਠ ਰਹਿ ਜਾਣਾ, ਗਲਤੀ ਸੁਨੇਹੇ ਅਤੇ ਵੈਲੀਡੇਸ਼ਨ ਸਟਰਿੰਗਾਂ ਸਮੇਤ।
- ਮਿਤੀਆਂ ਅਤੇ ਕੀਮਤਾਂ ਹੱਥੀਂ ਫਾਰਮੈਟ ਕਰਨਾ।
- ਭਾਸ਼ਾਵਾਂ ਲਈ ਝੰਡੇ, ਅਤੇ ਆਟੋ-ਰੀਡਾਇਰੈਕਟ ਜੋ ਲੋਕਾਂ ਨੂੰ ਗਲਤ ਵਰਜ਼ਨ ਵਿੱਚ ਫਸਾ ਦਿੰਦੇ ਹਨ।
- ਸਾਰੀਆਂ ਭਾਸ਼ਾਵਾਂ ਲਈ ਇੱਕ URL ਉਹਨਾਂ ਪੰਨਿਆਂ 'ਤੇ ਜੋ ਇੰਡੈਕਸ ਹੋਣੇ ਚਾਹੀਦੇ ਹਨ।
- hreflang ਦੇ ਵਾਪਸੀ ਲਿੰਕ ਗੁੰਮ, ਜਿਸ ਕਰਕੇ Google ਟੈਗਾਂ ਨੂੰ ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰਦਾ ਹੈ।
- ਇੰਟਰਫੇਸ ਦਾ ਅਨੁਵਾਦ ਪਰ ਸਮੱਗਰੀ ਦਾ ਨਹੀਂ, ਜਾਂ ਉਲਟ।
- ਬਿਨਾਂ ਜਾਂਚੇ ਮਸ਼ੀਨ ਅਨੁਵਾਦ ਕੀਮਤਾਂ, ਕਾਨੂੰਨੀ ਅਤੇ ਚੈੱਕਆਉਟ ਪੰਨਿਆਂ 'ਤੇ।
ਬਹੁ-ਭਾਸ਼ਾਈ ਚੈੱਕਲਿਸਟ
- ਕੋਈ ਪੱਕਾ ਯੂਜ਼ਰ-ਦਿਖਣ ਵਾਲਾ ਸਟਰਿੰਗ ਨਹੀਂ; ਬਹੁਵਚਨ ਨਿਯਮ ਅਤੇ ਪਲੇਸਹੋਲਡਰ ਵਰਤੇ ਗਏ
- ਮਿਤੀਆਂ, ਨੰਬਰ ਅਤੇ ਮੁਦਰਾ
Intlਨਾਲ ਫਾਰਮੈਟ ਹੋਏ - ਹਰ ਪੰਨੇ 'ਤੇ ਭਾਸ਼ਾ ਬਦਲਣ ਵਾਲਾ ਜਿਸ 'ਤੇ ਮੂਲ ਨਾਮ ਹੋਣ; ਚੋਣ ਯਾਦ ਰੱਖੀ ਜਾਂਦੀ ਹੈ
- ਜਨਤਕ ਪੰਨਿਆਂ ਲਈ ਹਰ ਭਾਸ਼ਾ ਦਾ ਵੱਖਰਾ URL; ਕੋਈ ਜ਼ਬਰਦਸਤੀ ਰੀਡਾਇਰੈਕਟ ਨਹੀਂ
- ਹਰ ਵਰਜ਼ਨ 'ਤੇ hreflang, ਆਪਣੇ ਆਪ ਅਤੇ x-default ਸਮੇਤ
-
html lang(ਅਤੇ ਜਿੱਥੇ ਲੋੜ ਹੋਵੇdir="rtl") ਹਰ ਪੰਨੇ ਲਈ ਸੈੱਟ - ਡੇਟਾਬੇਸ ਦੀ ਸਮੱਗਰੀ ਦਾ ਅਨੁਵਾਦ ਅਤੇ ਠੀਕ ਬਦਲਵੇਂ ਮੂਲ
- ਈਮੇਲਾਂ ਅਤੇ ਸੂਚਨਾਵਾਂ ਯੂਜ਼ਰ ਦੀ ਭਾਸ਼ਾ ਵਿੱਚ ਭੇਜੀਆਂ ਜਾਂਦੀਆਂ ਹਨ
- ਗਾਹਕਾਂ ਨੂੰ ਦਿਖਣ ਵਾਲਾ ਪਾਠ ਕਿਸੇ ਮਾਹਿਰ ਬੋਲਣ ਵਾਲੇ ਨੇ ਜਾਂਚਿਆ ਹੈ
Mythex 'ਤੇ ਕਈ ਭਾਸ਼ਾਵਾਂ
Mythex 'ਤੇ ਤੁਸੀਂ ਚੈਟ ਵਿੱਚ ਪੁੱਛ ਕੇ ਭਾਸ਼ਾਵਾਂ ਜੋੜਦੇ ਹੋ; ਇਸ ਲਈ ਕੋਈ ਵੱਖਰਾ ਅਨੁਵਾਦ ਪੈਨਲ ਨਹੀਂ ਹੈ, ਇਸ ਲਈ ਉੱਪਰਲੇ ਪ੍ਰੋਂਪਟ ਜਿਵੇਂ ਲਿਖੇ ਹਨ ਉਸੇ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦੇ ਹਨ। ਪਹਿਲਾਂ internationalisation ਵਾਲਾ ਕਦਮ ਕਰੋ ਅਤੇ ਭਾਸ਼ਾਵਾਂ ਜੋੜਨ ਤੋਂ ਪਹਿਲਾਂ Preview ਵਿੱਚ ਜਾਂਚੋ; ਇਹ ਵੱਡਾ ਰੀਫੈਕਟਰ ਹੈ, ਅਤੇ ਚੈਟ ਚੈੱਕਪੌਇੰਟ ਤੁਹਾਨੂੰ ਵਾਪਸ ਜਾਣ ਦਾ ਬਿੰਦੂ ਦਿੰਦਾ ਹੈ (ਚੈਟ ਅਤੇ ਚੈੱਕਪੌਇੰਟ)। ਜੇ ਤੁਸੀਂ ਚਾਹੁੰਦੇ ਹੋ ਕਿ ਐਪ AI ਜਾਂ ਅਨੁਵਾਦ API ਨਾਲ ਸਮੱਗਰੀ ਆਪਣੇ ਆਪ ਅਨੁਵਾਦ ਕਰੇ, ਤਾਂ ਉਹ ਤੁਹਾਡੀ ਆਪਣੀ API ਕੁੰਜੀ ਵਰਤਦਾ ਹੈ, ਜੋ ਪ੍ਰੋਜੈਕਟ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਸਟੋਰ ਹੁੰਦੀ ਹੈ (ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲ ਅਤੇ ਸੀਕਰੇਟ); LLM API ਕਿਵੇਂ ਵਰਤੀਏ ਵਿੱਚ ਖਰਚਿਆਂ ਬਾਰੇ ਦੱਸਿਆ ਹੈ। ਨਵੀਆਂ ਭਾਸ਼ਾਵਾਂ ਤਿਆਰ ਹੋਣ 'ਤੇ ਦੁਬਾਰਾ ਪਬਲਿਸ਼ ਕਰੋ।
ਸਵਾਲ
i18n ਅਤੇ ਲੋਕਲਾਈਜ਼ੇਸ਼ਨ ਵਿੱਚ ਕੀ ਫ਼ਰਕ ਹੈ?
ਇੰਟਰਨੈਸ਼ਨਲਾਈਜ਼ੇਸ਼ਨ (i18n) ਦਾ ਮਤਲਬ ਹੈ ਕੋਡ ਨੂੰ ਕਈ ਭਾਸ਼ਾਵਾਂ ਲਈ ਤਿਆਰ ਕਰਨਾ: ਕੋਈ ਪੱਕਾ ਲਿਖਿਆ ਪਾਠ ਨਾ ਹੋਵੇ, ਮਿਤੀਆਂ ਤੇ ਨੰਬਰ ਥਾਂ ਮੁਤਾਬਕ ਬਦਲਣ, ਅਤੇ ਲੇਆਉਟ ਲੰਮੇ ਸ਼ਬਦਾਂ ਅਤੇ ਸੱਜਿਓਂ-ਖੱਬੇ ਲਿਪੀਆਂ ਨੂੰ ਸੰਭਾਲ ਸਕੇ। ਲੋਕਲਾਈਜ਼ੇਸ਼ਨ (l10n) ਦਾ ਮਤਲਬ ਹੈ ਕਿਸੇ ਇੱਕ ਭਾਸ਼ਾ ਜਾਂ ਬਾਜ਼ਾਰ ਲਈ ਇਸ ਨੂੰ ਢਾਲਣਾ, ਜਿਸ ਵਿੱਚ ਮੁੱਖ ਤੌਰ 'ਤੇ ਅਨੁਵਾਦ ਹੁੰਦਾ ਹੈ।
ਕੀ ਮੈਂ ਆਪਣੀ ਐਪ ਦਾ ਅਨੁਵਾਦ ਸਿਰਫ਼ ਮਸ਼ੀਨ ਜਾਂ AI ਨਾਲ ਕਰ ਸਕਦਾ ਹਾਂ?
ਪਹਿਲੇ ਖਰੜੇ ਲਈ, ਹਾਂ। ਅੱਜਕੱਲ੍ਹ ਦਾ ਮਸ਼ੀਨ ਅਤੇ AI ਅਨੁਵਾਦ ਇੰਟਰਫੇਸ ਦੇ ਪਾਠ ਲਈ ਚੰਗਾ ਹੈ। ਗਾਹਕਾਂ ਨੂੰ ਦਿਖਣ ਵਾਲੀ ਹਰ ਚੀਜ਼ ਨੂੰ ਕਿਸੇ ਮਾਹਿਰ ਬੋਲਣ ਵਾਲੇ ਤੋਂ ਜਾਂਚਵਾਓ, ਖ਼ਾਸ ਕਰਕੇ ਕਾਨੂੰਨੀ ਪਾਠ, ਕੀਮਤਾਂ ਅਤੇ ਮਾਰਕੀਟਿੰਗ ਲਿਖਤ, ਕਿਉਂਕਿ ਉੱਥੇ ਲਹਿਜ਼ਾ ਅਤੇ ਛੋਟੀਆਂ ਗਲਤੀਆਂ ਮਾਇਨੇ ਰੱਖਦੀਆਂ ਹਨ।
ਕੀ ਹਰ ਭਾਸ਼ਾ ਦਾ ਆਪਣਾ URL ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ?
ਜਿਹੜੇ ਜਨਤਕ ਪੰਨੇ ਤੁਸੀਂ ਖੋਜ ਨਤੀਜਿਆਂ ਵਿੱਚ ਚਾਹੁੰਦੇ ਹੋ, ਉਹਨਾਂ ਲਈ ਹਾਂ। Google ਹਰ ਭਾਸ਼ਾ ਲਈ ਵੱਖਰੇ URL ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕਰਦਾ ਹੈ, ਜਿਵੇਂ /fr/ ਅਤੇ /de/, ਨਾ ਕਿ ਕੂਕੀ ਜਾਂ ਬ੍ਰਾਊਜ਼ਰ ਸੈਟਿੰਗ ਰਾਹੀਂ ਭਾਸ਼ਾ ਬਦਲਣਾ, ਕਿਉਂਕਿ ਉਸ ਦਾ ਕ੍ਰਾਲਰ ਸ਼ਾਇਦ ਸਿਰਫ਼ ਇੱਕ ਵਰਜ਼ਨ ਹੀ ਦੇਖ ਸਕੇ।
ਕੀ ਮੈਂ ਵਿਜ਼ਿਟਰਾਂ ਨੂੰ ਉਹਨਾਂ ਦੇ ਬ੍ਰਾਊਜ਼ਰ ਦੀ ਭਾਸ਼ਾ ਦੇ ਆਧਾਰ 'ਤੇ ਰੀਡਾਇਰੈਕਟ ਕਰਾਂ?
ਸੁਝਾਅ ਦਿਓ, ਜ਼ਬਰਦਸਤੀ ਨਾ ਕਰੋ। Google ਆਟੋਮੈਟਿਕ ਭਾਸ਼ਾ ਰੀਡਾਇਰੈਕਟ ਦੇ ਵਿਰੁੱਧ ਸਲਾਹ ਦਿੰਦਾ ਹੈ, ਕਿਉਂਕਿ ਇਸ ਨਾਲ ਲੋਕ ਅਤੇ ਕ੍ਰਾਲਰ ਹੋਰ ਵਰਜ਼ਨਾਂ ਤੱਕ ਨਹੀਂ ਪਹੁੰਚ ਸਕਦੇ। ਇੱਕ ਛੋਟਾ ਪ੍ਰੋਂਪਟ ਦਿਖਾਓ ਜੋ ਮਿਲਦੀ ਭਾਸ਼ਾ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰੇ, ਅਤੇ ਹਰ ਪੰਨੇ 'ਤੇ ਦਿਖਣ ਵਾਲਾ ਭਾਸ਼ਾ ਬਦਲਣ ਵਾਲਾ ਰੱਖੋ।