ભાષા શોધ: ડાયનેમિક મલ્ટીલિંગ્યુલ સપોર્ટ

આ લેખ સમજાવે છે કે કેવી રીતે અમે યુઝરની પસંદગીની ભાષા સ્વચાલિત રીતે શોધીએ છીએ અને સામગ્રી સર્વ કરીએ છીએ.

સમસ્યા: વૈશ્વિક યુઝર્સને સર્વ કરવા

યુઝર્સ વિવિધ દેશોમાંથી આવે છે અને વિવિધ ભાષાઓ બોલે છે:

  • ભારત: હિન્દી, બંગાળી, તમિલ, તેલુગુ, ગુજરાતી, મરાઠી, કન્નડ, મલયાલમ, પંજાબી, ઉર્દૂ

  • યુરોપ: જર્મન, ફ્રેંચ, સ્પેનિશ, ઇટાલિયન, પોર્ટુગીઝ, રશિયન

  • એશિયા: જાપાનીઝ, કોરિયન, ચાઇનીઝ

અમારે તેમની ભાષાની પસંદગી શોધવી અને અનુવાદિત સામગ્રી સ્વચાલિત રીતે સર્વ કરવાની જરૂર છે.

શોધ પ્રાથમિકતા

અમે ક્રમમાં બહુવિધ સ્રોતો તપાસીએ છીએ:

1. URL પેરામીટર (?lang=hi)

2. સેશન (પ્રથમ શોધ પછી સંગ્રહિત)

3. કૂકી (translation_lang અથવા lang)

4. બ્રાઉઝર એક્સેપ્ટ-લેંગ્વેજ હેડર (ભવિષ્યમાં)

5. ડિફૉલ્ટ (અંગ્રેજી)

આ ક્રમ શા માટે?

URL પેરામીટર પ્રથમ: સ્પષ્ટ ભાષા સ્વિચિંગની મંજૂરી આપે છે

સેશન બીજું: બ્રાઉઝિંગ સેશન દરમિયાન ટકી રહે છે

કૂકી ત્રીજું: સેશન્સ વચ્ચે ટકી રહે છે (30 દિવસ)

ડિફૉલ્ટ છેલ્લું: નવા યુઝર્સ માટે ફૉલબેક

અમલીકરણ

def get_locale():
    # 1. Check URL parameter
    lang_param = request.args.get("lang")
    if lang_param in valid_langs:
        return lang_param

    # 2. Check session
    if "translation_lang" in session:
        return session["translation_lang"]

    # 3. Check cookie
    # ... (implementation details omitted)

ભાષા સ્વિચિંગ

યુઝર્સ URL દ્વારા ભાષા બદલી શકે છે:

/p/Treo-N100-8-256?lang=hi

આ ટ્રિગર કરે છે:

1. સેશન સેટ કરો: session["translation_lang"] = "hi"

2. કૂકી સેટ કરો: translation_lang=hi; Max-Age=2592000 (30 દિવસ)

3. રિડાયરેક્ટ કરો: URL માંથી lang પેરામીટર દૂર કરો

ફાયદો: ભાષા પસંદગી પછી સ્વચ્છ URLs

સપોર્ટેડ ભાષાઓ

અમે 20 ભાષાઓને સપોર્ટ કરીએ છીએ:

ભારતીય ભાષાઓ (10):

  • હિન્દી (hi)

  • બંગાળી (bn)

  • તમિલ (ta)

  • તેલુગુ (te)

  • ગુજરાતી (gu)

  • મરાઠી (mr)

  • કન્નડ (kn)

  • મલયાલમ (ml)

  • પંજાબી (pa)

  • ઉર્દૂ (ur)

યુરોપિયન ભાષાઓ (7):

  • જર્મન (de)

  • ફ્રેંચ (fr)

  • સ્પેનિશ (es)

  • ઇટાલિયન (it)

  • પોર્ટુગીઝ (pt)

  • રશિયન (ru)

એશિયન ભાષાઓ (3):

  • જાપાનીઝ (ja)

  • કોરિયન (ko)

  • ચાઇનીઝ (zh)

સામગ્રી અનુવાદ

વિવિધ સામગ્રી પ્રકારો વિવિધ અનુવાદ પદ્ધતિઓનો ઉપયોગ કરે છે:

સ્ટેટિક ટેમ્પલેટ્સ (Flask-Babel)

નેવિગેશન, બટનો, લેબલ્સ .po ફાઇલો દ્વારા અનુવાદિત:

{{ _('Add to Cart') }}  → "કાર્ટમાં ઉમેરો" (ગુજરાતી)

ડાયનેમિક સામગ્રી (TranslationManager)

ઉત્પાદન નામો, ફીચર્સ ફ્રેઝ ટેબલ દ્વારા અનુવાદિત:

"Mini PC" → "મિની પીસી" (ગુજરાતી)

લાંબી સામગ્રી (DeepSeek AI)

ઉત્પાદન વર્ણનો, લેખો AI દ્વારા અનુવાદિત:

"Compact office computer..." → "કોમ્પેક્ટ ઓફિસ કમ્પ્યુટર..." (ગુજરાતી)

જુઓ: Translation System વિગતો માટે

પ્રાદેશિક ફોર્મેટિંગ

ભાષા પસંદગી ફોર્મેટિંગને પણ અસર કરે છે:

નંબર ફોર્મેટ

અંગ્રેજી: 1,234.56

યુરોપિયન: 1.234,56 (વિપરીત સેપરેટર્સ)

ભારતીય: 1,23,456 (લાખ/કરોડ જૂથ)

તારીખ ફોર્મેટ

અંગ્રેજી: Feb 18, 2026

યુરોપિયન: 18.02.2026

ભારતીય: 18/02/2026

કરન્સી

અંગ્રેજી: ₹1,234

યુરોપિયન: €1.234

આંતરરાષ્ટ્રીય: $1,234

ભાષા પસંદગી UI

યુઝર્સ ડ્રોપડાઉન દ્વારા ભાષા બદલી શકે છે:

સ્થાન: ટોપ નેવિગેશન બાર

ડિસ્પ્લે: ફ્લેગ આઇકન + ભાષાનું નામ

વર્તણૂક: ?lang=<code> સાથે પેજ રિલોડ કરો

SEO વિચારણાઓ

URL સ્ટ્રક્ચર

અમે સિંગલ URL નો ઉપયોગ કરીએ છીએ બધી ભાષાઓ માટે (કોઈ /hi/, /de/ પ્રિફિક્સ નહીં):

ફાયદો: સરળ આર્કિટેક્ચર, ડુપ્લિકેટ કન્ટેન્ટ સમસ્યાઓ નહીં

ટ્રેડ-ઑફ: દરેક ભાષા માટે ઓછું SEO મૂલ્ય

Hreflang ટેગ્સ

અમે વૈકલ્પિક ભાષા લિંક્સ ઉમેરીએ છીએ:

<link rel="alternate" hreflang="en" href="https://www.thinvent.in/p/Treo-N100">
<link rel="alternate" hreflang="hi" href="https://www.thinvent.in/p/Treo-N100?lang=hi">
<link rel="alternate" hreflang="de" href="https://www.thinvent.in/p/Treo-N100?lang=de">

ફાયદો: Google જાણે છે કે કઈ ભાષાનું વર્ઝન બતાવવું

ફૉલબેક વ્યૂહરચના

જો પસંદ કરેલી ભાષા માટે અનુવાદ ખૂટે છે:

1. અંગ્રેજી આજમાવો: મોટાભાગની સામગ્રીમાં અંગ્રેજી વર્ઝન હોય છે

2. મૂળ બતાવો: કંઈ નહીં તેના કરતાં વધુ સારું

3. અનુવાદ માટે કતારમાં મૂકો: બેચ પ્રોસેસિંગ માટે અનુવાદ કતારમાં ઉમેરો

પરફોર્મન્સ

કેશિંગ

અનુવાદ મેમરીમાં કેશ કરવામાં આવે છે:

ફ્રેઝ ટેબલ્સ: સ્ટાર્ટઅપ પર એક વાર લોડ કરવામાં આવે છે

AI અનુવાદો: ડેટાબેઝમાં કેશ કરવામાં આવે છે

ફાયદો: પ્રતિ રિક્વેસ્ટ અનુવાદ ઓવરહેડ નહીં

લેઝી લોડિંગ

અનુવાદો ફક્ત જરૂર પડ્યે લોડ થાય છે:

ઉત્પાદન વર્ણનો: ઉત્પાદન પેજ વ્યૂ પર લોડ થાય છે

ક્વેરી પેજ કન્ટેન્ટ: ક્વેરી પેજ વ્યૂ પર લોડ થાય છે

ફાયદો: ઝડપી પ્રારંભિક પેજ લોડ

સંદર્ભો

તકનીકી ખ્યાલો

લાઇબ્રેરીઓ

  • Flask-Babel - ટેમ્પલેટ અનુવાદ

  • Babel - આંતરરાષ્ટ્રીયકરણ લાઇબ્રેરી

સંબંધિત લેખો

સારાંશ

ભાષા શોધ પ્રાથમિકતા સિસ્ટમનો ઉપયોગ કરે છે:

શોધ ક્રમ:

  • ✅ URL પેરામીટર (?lang=hi)

  • ✅ સેશન (બ્રાઉઝિંગ દરમિયાન)

  • ✅ કૂકી (30 દિવસ)

  • ✅ ડિફૉલ્ટ (અંગ્રેજી)

સપોર્ટેડ:

  • ✅ 20 ભાષાઓ (10 ભારતીય, 7 યુરોપિયન, 3 એશિયન)

  • ✅ પ્રાદેશિક ફોર્મેટિંગ (નંબર, તારીખ, કરન્સી)

  • ✅ SEO hreflang ટેગ્સ

અનુવાદ પદ્ધતિઓ:

  • ✅ Flask-Babel (સ્ટેટિક ટેમ્પલેટ્સ)

  • ✅ TranslationManager (ઉત્પાદન નામો, ફીચર્સ)

  • ✅ DeepSeek AI (વર્ણનો, લેખો)

પરફોર્મન્સ:

  • ✅ ઇન-મેમરી કેશિંગ

  • ✅ લેઝી લોડિંગ

  • ✅ AI અનુવાદો માટે ડેટાબેઝ કેશિંગ

આ સ્વચાલિત ભાષા શોધ અને સીમલેસ મલ્ટીલિંગ્યુલ અનુભવને સક્ષમ કરે છે.


← ડોક્યુમેન્ટેશન ઇન્ડેક્સ પર પાછા જાઓ