الوثائق: دالة getMultilingualUrls في intlayer

    الوصف:

    تقوم دالة getMultilingualUrls بإنشاء خريطة من عناوين URL متعددة اللغات عن طريق إضافة بادئة عناوين URL المعطاة بكل لغة مدعومة. يمكنها التعامل مع كل من عناوين URL المطلقة والنسبية، وتطبيق بادئة اللغة المناسبة بناءً على التكوين المقدم أو القيم الافتراضية.


    المعاملات:

    • url: string

      • الوصف: سلسلة عنوان URL الأصلية المراد إضافة بادئات اللغات إليها.
      • النوع: string
    • locales: Locales[]

      • الوصف: مصفوفة اختيارية من اللغات المدعومة. يتم تعيينها على القيم الافتراضية للغات المعرفة في المشروع.
      • النوع: Locales[]
      • الافتراضي: localesDefault
    • defaultLocale: Locales

      • الوصف: اللغة الافتراضية للتطبيق. يتم تعيينها على اللغة الافتراضية المعرفة في المشروع.
      • النوع: Locales
      • الافتراضي: defaultLocaleDefault
    • prefixDefault: boolean

      • الوصف: ما إذا كان يجب إضافة بادئة اللغة الافتراضية. يتم تعيينها على القيمة المعينة في المشروع.
      • النوع: boolean
      • الافتراضي: prefixDefaultDefault

    النتيجة:

    • النوع: IConfigLocales<string>
    • الوصف: كائن يربط كل لغة بالرابط متعدد اللغات المقابل.

    مثال على الاستخدام:

    عناوين URL النسبية:

    typescript
    import { getMultilingualUrls, Locales } from "intlayer";getMultilingualUrls(  "/dashboard",  [Locales.ENGLISH, Locales.FRENCH],  Locales.ENGLISH,  false);// النتيجة: {//   en: "/dashboard",//   fr: "/fr/dashboard"// }

    عناوين URL المطلقة:

    typescript
    getMultilingualUrls(  "https://example.com/dashboard",  [Locales.ENGLISH, Locales.FRENCH],  Locales.ENGLISH,  true);// النتيجة: {//   en: "https://example.com/en/dashboard",//   fr: "https://example.com/fr/dashboard"// }

    حالات الشذوذ:

    • عدم وجود جزء اللغة:

      • تقوم الدالة بإزالة أي جزء لغة موجود من عنوان URL قبل إنشاء الخرائط متعددة اللغات.
    • اللغة الافتراضية:

      • عندما تكون prefixDefault تساوي false، لا تضيف الدالة بادئة للغة الافتراضية.
    • اللغات غير المدعومة:

      • يتم اعتبار اللغات المقدمة فقط في مصفوفة locales لتوليد عناوين URL.

    الاستخدام في التطبيقات:

    في تطبيق متعدد اللغات، يعد تكوين إعدادات التدويل باستخدام locales و defaultLocale أمرًا حاسمًا لضمان عرض اللغة الصحيحة. أدناه مثال على كيفية استخدام getMultilingualUrls في إعداد التطبيق:

    tsx
    import { Locales, type IntlayerConfig } from "intlayer";// التكوين للغات المدعومة واللغة الافتراضيةexport default {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,  },} satisfies IntlayerConfig;export default config;

    يضمن التكوين أعلاه أن التطبيق يتعرف على ENGLISH و FRENCH و SPANISH كلغات مدعومة ويستخدم ENGLISH كلغة احتياطية.

    باستخدام هذا التكوين، يمكن لدالة getMultilingualUrls توليد خريطة عناوين URL متعددة اللغات ديناميكيًا بناءً على اللغات المدعومة في التطبيق:

    typescript
    getMultilingualUrls(  "/dashboard",  [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],  Locales.ENGLISH);// النتيجة:// {//   en: "/dashboard",//   fr: "/fr/dashboard",//   es: "/es/dashboard"// }getMultilingualUrls(  "https://example.com/dashboard",  [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],  Locales.ENGLISH,  true);// النتيجة:// {//   en: "https://example.com/en/dashboard",//   fr: "https://example.com/fr/dashboard",//   es: "https://example.com/es/dashboard"// }

    من خلال دمج getMultilingualUrls، يمكن للمطورين الحفاظ على هياكل عناوين URL متسقة عبر عدة لغات، مما يعزز كل من تجربة المستخدم وSEO.

    إذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.

    رابط GitHub للتوثيق