உங்கள் ஆப் அல்லது website-க்கு பல மொழிகளை எப்படி சேர்ப்பது
ஆப்பில் பல மொழிகளைச் சேர்க்க, interface-இல் உள்ள ஒவ்வொரு உரையையும் மொழிக்கு ஒன்றாக மொழிபெயர்ப்பு கோப்புகளுக்கு நகர்த்துங்கள், ஒரு i18n library மூலம் அவற்றை ஏற்றுங்கள், தேர்வை நினைவில் வைத்துக்கொள்ளும் மொழி மாற்றியைச் சேருங்கள். தேடலில் கண்டுபிடிக்கப்பட வேண்டிய public pages-க்கு, ஒவ்வொரு மொழிக்கும் /fr/ போன்ற தனி URL கொடுத்து, hreflang tags மூலம் பதிப்புகளை இணையுங்கள். பிறகு பலர் மறந்துவிடும் பகுதிகளைக் கையாளுங்கள்: தேதிகள், எண்கள் மற்றும் நாணயங்கள், சில மொழிகளில் நீண்ட உரை, வலமிருந்து இடமாக செல்லும் எழுத்துகள், மற்றும் உங்கள் database-இல் சேமிக்கப்படும் உள்ளடக்கம்.
நீங்கள் கேட்கக்கூடிய சொற்கள்
- Internationalisation (i18n): எந்த மொழியையும் ஆதரிக்கும் வகையில் code-ஐ தயார் செய்வது — கைமுறை strings இல்லாமல், locale-க்கு ஏற்ற வடிவமைப்பு, நெகிழ்வான layouts. "18" என்பது i மற்றும் n-க்கு இடையே உள்ள எழுத்துகளின் எண்ணிக்கை.
- Localisation (l10n): ஆப்பை ஒரு குறிப்பிட்ட மொழி அல்லது சந்தைக்கு ஏற்றவாறு மாற்றுவது, பெரும்பாலும் மொழிபெயர்ப்பு, சில நேரங்களில் நாணயம், படங்கள் மற்றும் சட்ட உரையும் சேர்ந்து.
- Locale: ஒரு மொழியும், விருப்பமாக ஒரு பகுதியும் (region), எடுத்துக்காட்டாக
en-GBஅல்லதுpt-BR.
i18n-ஐ ஒரு முறை செய்யுங்கள், பிறகு ஒவ்வொரு புதிய மொழியைச் சேர்ப்பதும் பெரும்பாலும் மொழிபெயர்ப்பு வேலையாக மட்டுமே இருக்கும்.
விருப்பங்களும் சமரசங்களும்
| அணுகுமுறை | எப்படி வேலை செய்கிறது | எதற்கு நல்லது | சமரசம் |
|---|---|---|---|
| i18n library + மொழிபெயர்ப்பு கோப்புகள் (எ.கா. react-i18next, next-intl, vue-i18n) | உரை ஒவ்வொரு locale-க்கும் JSON கோப்பில் இருக்கும்; components key-களைத் தேடும் | பெரும்பாலான ஆப்கள் | ஆரம்ப refactor; பராமரிக்க வேண்டிய மொழிபெயர்ப்புகள் |
| Translation management system (எ.கா. Crowdin, Lokalise, Phrase) | மொழிபெயர்ப்பாளர்களுக்கான hosted editor, உங்கள் கோப்புகளுடன் sync ஆகும் | பல மொழிகள், பல மொழிபெயர்ப்பாளர்கள் | பணம் செலுத்த வேண்டும்; அமைக்க இன்னொரு tool |
| Build நேரத்தில் machine அல்லது AI மொழிபெயர்ப்பு | API மூலம் draft மொழிபெயர்ப்புகளை உருவாக்கி, பிறகு மதிப்பாய்வு செய்தல் | பல மொழிகளை விரைவாகப் பெறுதல் | தரத்தை சரிபார்க்க வேண்டும்; API செலவுகள் |
| Browser அல்லது widget auto-translate | பார்வையாளரின் browser பக்கத்தை உடனடியாக மொழிபெயர்க்கும் | நீங்கள் கட்டுப்படுத்த எதுவும் இல்லை | தர கட்டுப்பாடு இல்லை; மொழிபெயர்க்கப்பட்ட பக்கங்கள் உங்களுடையதாக index ஆவதில்லை |
| மொழிக்கு தனி sites | ஒவ்வொரு சந்தைக்கும் site-ஐ நகலெடுத்தல் | மிக வேறுபட்ட சந்தைகள் | எல்லாவற்றையும் இரண்டு முறை பராமரிக்க வேண்டும் |
பெரும்பாலான ஆப்களுக்கு, மொழிபெயர்ப்பு கோப்புகளுடன் கூடிய ஒரு நிலையான i18n library சரியான அடிப்படை. விரும்பினால் machine அல்லது AI மொழிபெயர்ப்பில் draft உருவாக்குங்கள், பிறகு வாடிக்கையாளர்கள் அதிகம் பார்க்கும் பகுதிகளை சரளமாக பேசும் ஒருவரிடம் மதிப்பாய்வு செய்யுங்கள்.
பல மொழி ஆப்பின் பகுதிகள்
மொழிபெயர்ப்பு கோப்புகள்
<h1>Welcome back</h1> என்று எழுதுவதற்கு பதிலாக, code t('dashboard.welcome') என்று சொல்லும், ஒவ்வொரு locale-க்கும் உரையுடன் ஒரு கோப்பு இருக்கும்:
{
"dashboard": {
"welcome": "Welcome back, {{name}}",
"items_one": "{{count}} item",
"items_other": "{{count}} items"
}
}
வாக்கியத் துண்டுகளை இணைப்பதற்கு பதிலாக மாறிகளுக்கு placeholders பயன்படுத்துங்கள் — மொழிகளுக்கிடையே சொல் வரிசை வேறுபடும். library-இன் plural rules-ஐயும் பயன்படுத்துங்கள்: ஆங்கிலத்தில் இரண்டு வடிவங்கள் (1 item, 2 items), ஆனால் சில மொழிகளில் மூன்று, நான்கு அல்லது அதற்கு மேலான வடிவங்கள் உண்டு.
தேதிகள், எண்கள் மற்றும் பணத்தை வடிவமைத்தல்
இவற்றை கைமுறையாக வடிவமைக்காதீர்கள். browser-இன் உள்ளமைந்த Intl API எந்த locale-க்கும் வடிவமைக்கும்: ஆங்கிலத்தில் 1,234.5 என்பது ஜெர்மனில் 1.234,5; தேதிகள் நாள் முதலா மாதம் முதலா என்று மாறும்; நாணய சின்னங்கள் இடம் மாறும். தேதிகளை UTC-யிலும், பணத்தை நாணயக் குறியீட்டுடன் எண்ணாகவும் சேமியுங்கள், காட்சிக்காக மட்டும் வடிவமைக்கவும்.
நீளும் layout
மொழிபெயர்க்கப்பட்ட உரை பெரும்பாலும் ஆங்கிலத்தை விட நீளமாக இருக்கும் — குறிப்பாக ஜெர்மன் மற்றும் ஃபின்னிஷ் சொற்கள். நிலையான அகலமுள்ள buttons மற்றும் வெட்டப்பட்ட labels-ஐத் தவிர்க்கவும், உங்கள் நீளமான மொழியில் சோதிக்கவும்.
வலமிருந்து இடமாக செல்லும் மொழிகள்
அரபு, எபிரேயம், பாரசீகம் மற்றும் உருது வலமிருந்து இடமாக படிக்கப்படுகின்றன. அந்த locale-களுக்கு பக்கத்தில் dir="rtl" அமைத்து, layout தானாக பிரதிபலிக்க CSS logical properties-ஐப் பயன்படுத்துங்கள் (margin-left-க்கு பதிலாக margin-inline-start; Tailwind-இல் ml-4-க்கு பதிலாக ms-4). அம்புக்குறி போன்ற திசையைக் குறிக்கும் icons-ம் திருப்பப்பட வேண்டும்.
மொழி மாற்றியும் கண்டறிதலும்
ஒவ்வொரு பக்கத்திலும் ஒரு மொழி மாற்றியைக் காட்டுங்கள், ஒவ்வொரு மொழியின் சொந்தப் பெயரிலேயே ("Deutsch", "Français", "العربية") லேபிள் இடுங்கள் — கொடிகளைப் பயன்படுத்தாதீர்கள், கொடிகள் நாடுகளைக் குறிக்கின்றன, மொழிகளை அல்ல. முதல் வருகையில் browser-இன் விருப்ப மொழியைக் கண்டறிந்து ஒரு பதிப்பை பரிந்துரைக்கலாம், ஆனால் பார்வையாளரின் தெளிவான தேர்வே மேலோங்கி அதை நினைவில் வைக்க வேண்டும்.
URL-களும் SEO-வும்
தேடல் முடிவுகளில் வர வேண்டிய பக்கங்களுக்கு, ஒவ்வொரு மொழிக்கும் தனி URL தேவை. செப்டம்பர் 2026 நிலவரப்படி, பல மொழி தளங்களுக்கான Google வழிகாட்டுதல்:
- மொழிக்கு தனி URL-கள் — subdirectories (
example.com/fr/) எளிமையானவை; subdomains மற்றும் நாட்டு domains-உம் வேலை செய்யும். URL parameters (?lang=fr) பரிந்துரைக்கப்படுவதில்லை. - cookie அல்லது browser அமைப்பால் மட்டும் மொழியை மாற்றாதீர்கள்; Google-இன் crawler மற்ற பதிப்புகளை ஒருபோதும் பார்க்காமல் போகலாம்.
- மொழியின் அடிப்படையில் தானாக redirect செய்யாதீர்கள்; அதற்கு பதிலாக பதிப்புகளுக்கு இடையே links கொடுங்கள்.
- எந்தப் பக்கங்கள் ஒன்றுக்கொன்று மொழிபெயர்ப்புகள் என்று Google-க்குச் சொல்ல hreflang-ஐப் பயன்படுத்துங்கள். ஒவ்வொரு பதிப்பும் தன்னையும் மற்ற எல்லாவற்றையும் பட்டியலிட வேண்டும், இல்லையெனில் குறிப்புகள் புறக்கணிக்கப்படலாம். மாற்று பக்கத்திற்கு
x-defaultசேர்க்கவும். - பக்கத்தின் மொழியை Google அது காட்டும் உள்ளடக்கத்திலிருந்து கண்டறிகிறது,
langஅல்லது hreflang-இலிருந்து அல்ல — எனவே மெனுவை மட்டும் அல்ல, முழு பக்கத்தையும் மொழிபெயர்க்கவும்.
இருப்பினும் ஒவ்வொரு பதிப்பிலும் <html lang="fr"> அமைக்கவும்: screen readers சரியான உச்சரிப்பைத் தேர்வு செய்ய இதைப் பயன்படுத்துகின்றன, இது ஒரு accessibility தேவை.
லாகின் செய்த app திரைகள் index செய்யப்பட வேண்டியதில்லை, எனவே அவற்றுக்கு மொழியை பயனரின் profile-இல் சேமிப்பது சரி. பொது பக்கங்களை முதலில் crawl செய்ய வைப்பது பற்றி AI-built websites-க்கான SEO பார்க்கவும்.
database-இல் உள்ள உள்ளடக்கம்
interface உரை கோப்புகளில் இருக்கும்; product பெயர்கள், blog பதிவுகள் மற்றும் வகைகள் போன்ற உள்ளடக்கம் database-இல் இருக்கும். இரண்டு பொதுவான முறைகள்:
- ஒரு translations table:
product_translations (product_id, locale, name, description). சுத்தமானது, பல மொழிகளுக்கும் அளவிடக்கூடியது. - ஒவ்வொரு field-க்கும் ஒரு JSON column:
name: {"en": "...", "fr": "..."}. சில மொழிகளுக்கு எளியது.
மொழிபெயர்ப்பு இல்லாதபோது என்ன நடக்கும் என்பதை முடிவு செய்யுங்கள் — பொதுவாக வெற்று இடத்தைக் காட்டாமல் default மொழிக்கு fallback செய்யுங்கள்.
மின்னஞ்சல்களும் அறிவிப்புகளும்
ஒவ்வொரு பயனரின் மொழியையும் சேமித்து, மின்னஞ்சல்கள், அறிவிப்புகள் மற்றும் PDF-களுக்கும் பயன்படுத்துங்கள். ஆப்பை மொழிபெயர்ப்பது எளிது, ஆனால் வரவேற்பு மின்னஞ்சல் இன்னும் ஆங்கிலத்தில் வருவதை மறந்துவிடுவது எளிது.
வேலை செய்யும் prompts
react-i18next உடன் internationalisation சேர்க்கவும். ஒவ்வொரு பயனருக்கும் தெரியும் உரையையும் பெயரிடப்பட்ட keys உடன் locales/en.json-இல் நகர்த்தவும், string concatenation-க்கு பதிலாக interpolation மற்றும் plural rules பயன்படுத்தவும், தேதிகள், எண்கள் மற்றும் விலைகளை தற்போதைய locale-இல் Intl மூலம் வடிவமைக்கவும். இன்னும் எந்த வாசகத்தையும் மாற்ற வேண்டாம்.
பிரெஞ்சு மற்றும் ஜெர்மன் சேர்க்கவும். பொது marketing பக்கங்களுக்கு ஆங்கிலம் root-இல் இருக்க, /fr/ மற்றும் /de/ URL prefixes கொடுக்கவும், ஒவ்வொரு பக்கத்திலும் hreflang links (self-reference மற்றும் x-default உட்பட), ஒவ்வொரு பக்கத்துக்கும் html lang அமைக்கவும். ஒவ்வொரு மொழியின் சொந்தப் பெயரைக் காட்டும் மொழி மாற்றியைச் சேர்க்கவும். உள்நுழைந்த பக்கங்களுக்கு, மொழியை பயனரின் profile-இல் சேமிக்கவும்.
வலமிருந்து இடமாக ஆதரவுடன் அரபு சேர்க்கவும்: அரபுக்கு dir="rtl" அமைக்கவும், இடது/வலது margins மற்றும் paddings-ஐ logical properties-ஆல் மாற்றவும், திசை குறிக்கும் icons-ஐ பிரதிபலிக்கவும், forms மற்றும் tables இன்னும் சரியாகப் படிக்கப்படுகின்றனவா என்று சரிபார்க்கவும்.
படிப்படியாக
- உங்கள் முதல் கூடுதல் மொழியைத் தேர்ந்தெடுக்கவும் உண்மையான தேவையின் அடிப்படையில் — உங்கள் பார்வையாளர்கள் அல்லது வாடிக்கையாளர்கள் எங்கே இருக்கிறார்கள்.
- code-ஐ internationalise செய்யவும்: strings-ஐ கோப்புகளுக்கு நகர்த்தவும், plurals மற்றும்
Intlவடிவமைப்பைச் சேர்க்கவும். இதை ஆங்கிலத்துடன் மட்டும் வெளியிட்டு, எதுவும் மாறவில்லை என்று சரிபார்க்கவும். - public பக்கங்களுக்கான URL அமைப்பை முடிவு செய்து hreflang சேர்க்கவும்.
- மொழிபெயர்க்கவும்: machine அல்லது AI மொழிபெயர்ப்பில் draft செய்து, பிறகு சரளமாக பேசும் ஒருவரிடம் மதிப்பாய்வு செய்யவும். மொழிபெயர்ப்பாளர்களுக்கு சூழலைக் கொடுங்கள் — "Book" என்ற சொல் ஒரு திரையில் பெயர்ச்சொல், மற்றொரு திரையில் வினைச்சொல்.
- database உள்ளடக்கத்தை மொழிபெயர்த்து fallbacks அமைக்கவும்.
- மற்றவற்றை உள்ளூர்மயமாக்கவும்: மின்னஞ்சல்கள், பிழை செய்திகள், சட்டப் பக்கங்கள், உள்ளே உரை இருக்கும் படங்கள்.
- ஒவ்வொரு மொழியையும் phone அகலத்தில் சோதிக்கவும், தேவைப்பட்டால் வலமிருந்து இடமாக வைத்தும் சோதிக்கவும்.
- ஒரு செயல்முறையை அமைக்கவும், புதிய அம்சங்கள் மாதங்கள் கழித்து அல்ல, மொழிபெயர்ப்புகளுடன் வெளிவரும்படி.
பொதுவான தவறுகள்
- வாக்கியங்களை இணைப்பது (
"You have " + n + " messages"), இது மற்ற மொழிகளில் உடைந்து போகும். - Components-இல் கைமுறை உரை விடுவது, பிழை செய்திகள் மற்றும் validation strings.
- தேதிகளையும் விலைகளையும் கைமுறையாக வடிவமைப்பது.
- மொழிகளுக்கு கொடிகளைப் பயன்படுத்துவது, தவறான பதிப்பில் மக்களை சிக்க வைக்கும் தானியங்கி redirects.
- index ஆக வேண்டிய பக்கங்களுக்கு எல்லா மொழிகளுக்கும் ஒரே URL.
- காணாமல் போன hreflang return links, இதனால் Google குறிப்புகளைப் புறக்கணிக்கும்.
- interface-ஐ மொழிபெயர்த்து உள்ளடக்கத்தை மொழிபெயர்க்காமல் விடுவது, அல்லது அதன் தலைகீழ்.
- விலை, சட்டம் மற்றும் checkout பக்கங்களில் மதிப்பாய்வு செய்யப்படாத machine மொழிபெயர்ப்பு.
பல மொழி சரிபார்ப்புப் பட்டியல்
- பயனருக்குத் தெரியும் கைமுறை strings இல்லை; plural rules மற்றும் placeholders பயன்படுத்தப்பட்டுள்ளன
- தேதிகள், எண்கள் மற்றும் நாணயங்கள்
Intlமூலம் வடிவமைக்கப்பட்டுள்ளன - ஒவ்வொரு பக்கத்திலும் சொந்தப் பெயர்களுடன் மொழி மாற்றி; தேர்வு நினைவில் வைக்கப்படுகிறது
- பொது பக்கங்களுக்கு மொழிக்கு தனி URL-கள்; கட்டாய redirects இல்லை
- ஒவ்வொரு பதிப்பிலும் hreflang, தன்னுடையது மற்றும் x-default உட்பட
- ஒவ்வொரு பக்கத்திலும்
html lang(தேவைப்பட்டால்dir="rtl") அமைக்கப்பட்டுள்ளது - database உள்ளடக்கம் பொருத்தமான fallbacks உடன் மொழிபெயர்க்கப்பட்டுள்ளது
- மின்னஞ்சல்களும் அறிவிப்புகளும் பயனரின் மொழியில் அனுப்பப்படுகின்றன
- வாடிக்கையாளர்களுக்குத் தெரியும் உரை சரளமாக பேசும் ஒருவரால் மதிப்பாய்வு செய்யப்பட்டுள்ளது
Mythex-இல் பல மொழிகள்
Mythex-இல், chat-இல் கேட்பதன் மூலம் மொழிகளைச் சேர்க்கிறீர்கள் — தனி மொழிபெயர்ப்பு panel இல்லை — எனவே மேலே உள்ள prompts அப்படியே வேலை செய்யும். முதலில் i18n படியைச் செய்து, மொழிகளைச் சேர்ப்பதற்கு முன் Preview-இல் சரிபார்க்கவும்; இது ஒரு பெரிய refactor, மேலும் எதாவது உடைந்தால் திரும்பச் செல்ல ஒரு chat checkpoint உதவும் (chat மற்றும் checkpoints). உள்ளடக்கத்தை AI அல்லது மொழிபெயர்ப்பு API மூலம் தானாக மொழிபெயர்க்க விரும்பினால், அது project settings-இல் சேமிக்கப்படும் உங்கள் சொந்த API key-ஐப் பயன்படுத்தும் (environment variables மற்றும் secrets); LLM APIs-ஐ எப்படி பயன்படுத்துவது செலவுகளை விளக்குகிறது. புதிய மொழிகள் தயாரானதும் மீண்டும் publish செய்யவும்.
கேள்விகள்
i18n மற்றும் localisation இடையே என்ன வித்தியாசம்?
Internationalisation (i18n) என்பது பல மொழிகளை ஆதரிக்கும் வகையில் code-ஐ தயார் செய்வது: கைமுறையாக எழுதப்பட்ட உரை இல்லாமல் இருப்பது, locale-க்கு ஏற்ற தேதிகள் மற்றும் எண்கள், நீண்ட சொற்களையும் வலமிருந்து இடமாக செல்லும் எழுத்துகளையும் கையாளக்கூடிய layout. Localisation (l10n) என்பது ஒரு மொழிக்கு அல்லது ஒரு சந்தைக்கு ஏற்றவாறு மாற்றுவது, முக்கியமாக மொழிபெயர்ப்பு.
என் ஆப்பை மொழிபெயர்க்க machine translation அல்லது AI-ஐ மட்டும் பயன்படுத்தலாமா?
முதல் வரைவுக்கு ஆம் — நவீன machine மற்றும் AI மொழிபெயர்ப்பு interface உரைக்கு நன்றாக வேலை செய்கிறது. வாடிக்கையாளர்கள் பார்க்கும் எதையும், குறிப்பாக சட்ட உரை, விலை மற்றும் marketing வாசகங்களை, சரளமாக பேசும் ஒருவரிடம் சரிபார்க்கவும், ஏனெனில் அங்கு தொனியும் சிறிய தவறுகளும் முக்கியம்.
ஒவ்வொரு மொழிக்கும் தனி URL இருக்க வேண்டுமா?
தேடல் முடிவுகளில் வர வேண்டிய public pages-க்கு ஆம். cookie அல்லது browser அமைப்பின் மூலம் மொழியை மாற்றுவதற்கு பதிலாக /fr/, /de/ போன்ற மொழிக்கென தனி URL-களை Google பரிந்துரைக்கிறது, ஏனெனில் அதன் crawler ஒரு பதிப்பை மட்டுமே பார்க்கக்கூடும்.
பார்வையாளரின் browser மொழியின் அடிப்படையில் அவர்களை மறுபடி அனுப்பலாமா?
பரிந்துரைக்கலாம், கட்டாயப்படுத்த வேண்டாம். தானியங்கி மொழி redirect-களை Google எதிர்க்கிறது, ஏனெனில் அவை மக்களையும் crawler-களையும் மற்ற பதிப்புகளை அடையவிடாமல் தடுக்கக்கூடும். பொருத்தமான மொழியை வழங்கும் ஒரு சிறிய அறிவிப்பையும், ஒவ்வொரு பக்கத்திலும் தெரியும் மொழி மாற்றியையும் காட்டுங்கள்.