استخدم مساعدك المفضل للملخص واستخدم هذه الصفحة والموفر AI الذي تريده
هذه الوثيقة غير محدثة، تم تحديث النسخة الأساسية في 16 نوفمبر 2025.
الانتقال إلى الوثيقة الإنجليزيةتاريخ الإصدارات
- "بدء التاريخ"v5.5.1029/6/2025
تمت ترجمة محتوى هذه الصفحة باستخدام الذكاء الاصطناعي.
اعرض آخر نسخة المحتوى الأصلي باللغة الإنكليزيةإذا كان لديك فكرة لتحسين هذه الوثيقة، فلا تتردد في المساهمة من خلال تقديم طلب سحب على GitHub.
رابط GitHub للتوثيقنسخ الـ Markdown من المستند إلى الحافظة
التوثيق: دالة getLocalizedUrl في intlayer
الوصف
تقوم دالة getLocalizedUrl بإنشاء عنوان URL محلي عن طريق إضافة بادئة اللغة المحددة إلى عنوان URL المعطى. تتعامل مع عناوين URL المطلقة والنسبية على حد سواء، مما يضمن تطبيق بادئة اللغة الصحيحة بناءً على التكوين.
المميزات الرئيسية:
- معاملان فقط مطلوبان:
urlوcurrentLocale - كائن
optionsاختياري يحتوي علىlocalesوdefaultLocaleوmode - يستخدم تكوين التدويل في مشروعك كقيم افتراضية
- يمكن استخدامه بمعاملات بسيطة للحالات البسيطة أو تخصيصه بالكامل للسيناريوهات المعقدة
- يدعم أوضاع توجيه متعددة:
prefix-no-defaultوprefix-allوno-prefixوsearch-params
توقيع الدالة
نسخ الكود إلى الحافظة
المعاملات
المعاملات المطلوبة
url: string- Description: سلسلة URL الأصلية التي سيتم بادئتها بلغة.
- Type:
string - Required: Yes
currentLocale: Locales- Description: اللغة الحالية التي يتم تحديث URL لها.
- Type:
Locales - Required: Yes
المعاملات الاختيارية
options?: object- الوصف: كائن التكوين لسلوك تحديد موقع عناوين URL.
- النوع:
object مطلوب: لا (اختياري)
options.locales?: Locales[]- الوصف: مصفوفة اللغات المدعومة. إذا لم يتم توفيرها، فسيتم استخدام اللغات المكونة من تكوين مشروعك.
- النوع:
Locales[] - القيمة الافتراضية:
Project Configuration
options.defaultLocale?: Locales- الوصف: اللغة الافتراضية للتطبيق. إذا لم يتم توفيرها، فسيتم استخدام اللغة الافتراضية المكونة من تكوين مشروعك.
- النوع:
Locales - القيمة الافتراضية:
Project Configuration
options.mode?: 'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params'- الوصف: وضع التوجيه للعنوان لمعالجة اللغة. إذا لم يتم توفيره، فسيتم استخدام الوضع المكون من تكوين مشروعك.
- النوع:
'prefix-no-default' | 'prefix-all' | 'no-prefix' | 'search-params' - القيمة الافتراضية:
Project Configuration - الأوضاع:
prefix-no-default: بدون بادئة للغة الافتراضية، بادئة لجميع اللغات الأخرىprefix-all: بادئة لجميع اللغات بما في ذلك اللغة الافتراضيةno-prefix: بدون بادئة لغة في العنوانsearch-params: استخدام معاملات الاستعلام للغة (مثل?locale=fr)
الإرجاع
- النوع:
string - الوصف: عنوان URL المحلي للغة المحددة.
مثال على الاستخدام
الاستخدام الأساسي (المعاملات المطلوبة فقط)
عندما تكون قد قمت بتكوين مشروعك بإعدادات التدويل، يمكنك استخدام الدالة بالمعاملات المطلوبة فقط:
نسخ الكود إلى الحافظة
import { getLocalizedUrl, Locales } from "intlayer";
// يستخدم إعدادات مشروعك للمحليات و defaultLocale و mode
getLocalizedUrl("/about", Locales.FRENCH);
// Output: "/fr/about" (افترض أن الفرنسية مدعومة و mode هو 'prefix-no-default')
getLocalizedUrl("/about", Locales.ENGLISH);
// Output: "/about" أو "/en/about" (حسب إعداد mode لديك)
الاستخدام المتقدم (مع معاملات اختيارية)
يمكنك تجاوز التكوين الافتراضي بتوفير معامل options الاختياري:
عناوين URL النسبية
نسخ الكود إلى الحافظة
import { getLocalizedUrl, Locales } from "intlayer";
getLocalizedUrl(
"/about",
Locales.FRENCH,
[Locales.ENGLISH, Locales.FRENCH],
Locales.ENGLISH,
false
);
// الناتج: "/fr/about" للغة الفرنسية
// الناتج: "/about" للغة الافتراضية (الإنجليزية)
تجاوز الإعدادات الجزئية
يمكنك أيضًا توفير بعض المعاملات الاختيارية فقط. ستستخدم الدالة إعدادات مشروعك لأي معاملات لم تحددها:
نسخ الكود إلى الحافظة
عناوين URL المطلقة
نسخ الكود إلى الحافظة
لغة غير مدعومة
نسخ الكود إلى الحافظة
الحالات الخاصة
عدم وجود جزء اللغة:
- إذا لم يحتوي عنوان URL على جزء اللغة، تقوم الدالة بإضافة بادئة اللغة المناسبة بأمان.
اللغة الافتراضية:
- عندما تكون قيمة
prefixDefaultهيfalse، لا تضيف الدالة بادئة للغة الافتراضية في عنوان URL.
- عندما تكون قيمة
اللغات غير المدعومة:
- بالنسبة للغات غير المدرجة في
locales، لا تطبق الدالة أي بادئة.
- بالنسبة للغات غير المدرجة في
أنماط التوجيه:
'prefix-no-default': اللغة الافتراضية بدون بادئة، والبقية لها بادئات (على سبيل المثال،/about,/fr/about)'prefix-all': جميع اللغات لها بادئات (على سبيل المثال،/en/about,/fr/about)'no-prefix': لا توجد بادئات لغة في عناوين URL (يتم التعامل مع اللغة في مكان آخر)'search-params': يتم تحديد اللغة عبر معامل الاستعلام (على سبيل المثال،/about?locale=fr)
الاستخدام في التطبيقات
في تطبيق متعدد اللغات، يعد تكوين إعدادات التدويل باستخدام locales و defaultLocale أمرًا حيويًا لضمان عرض اللغة الصحيحة. فيما يلي مثال على كيفية استخدام getLocalizedUrl في إعداد التطبيق:
نسخ الكود إلى الحافظة
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 كلغة احتياطية.
باستخدام هذا التكوين، يمكن لدالة getLocalizedUrl إنشاء روابط URL محلية ديناميكيًا بناءً على تفضيل لغة المستخدم:
نسخ الكود إلى الحافظة
من خلال دمج دالة getLocalizedUrl، يمكن للمطورين الحفاظ على هياكل روابط URL متسقة عبر لغات متعددة، مما يعزز تجربة المستخدم وتحسين محركات البحث (SEO).
