autorenew

الإعداد

إنشاء المشروع

npm create astro@latest -- --template psephopaiktes/astro-i18n-starter

التكوين

1. تكوين /src/locales.ts

أولاً، قم بتحديث ملف إعدادات اللغة.

قم بتعيين اللغة الافتراضية في DEFAULT_LOCALE_SETTING وقائمة اللغات المطلوبة في LOCALES_SETTING. يتبع هذا تكوين Starlight.

// تعيين اللغة الافتراضية لموقعك.
export const DEFAULT_LOCALE_SETTING: string = "en";

export const LOCALES_SETTING: LocaleSetting = {
    // إضافة أو إزالة اللغات المدعومة.
    en: {
        label: "English",
        lang: "en-US", // اختياري
    },
    ja: {
        label: "日本語",
    },
    "zh-cn": {
        label: "简体中文",
        lang: "zh-CN",
    },
    ar: {
        label: "العربية",
        dir: "rtl", // اختياري
    },
};

يرجى الرجوع إلى الرابط التالي للحصول على معلومات حول رموز اللغات.

lang - HTML: HyperText Markup Language | MDN

2. تكوين astro.config.mjs

قم بتعيين عنوان URL الخاص بك في site.

import mdx from '@astrojs/mdx';
import sitemap from '@astrojs/sitemap';
import { defineConfig } from 'astro/config';
import { DEFAULT_LOCALE_SETTING, LOCALES_SETTING } from './src/locales';

export default defineConfig({
- site: 'https://astro-i18n-starter.pages.dev',
+ site: 'https://your-site.com',
  i18n: {
    defaultLocale: DEFAULT_LOCALE_SETTING,
    locales: Object.keys(LOCALES_SETTING),
    routing: {
      prefixDefaultLocale: true,
      redirectToDefaultLocale: false,
    },
  },
...

يرجى الرجوع إلى الوثائق الرسمية للحصول على خيارات التكوين المفصلة لـ Astro.

ملاحظة: لا يُنصح بتغيير إعدادات prefixDefaultLocale و redirectToDefaultLocale. Astro i18n Starter يدير عملية إعادة التوجيه باستخدام JavaScript من جانب العميل. إذا لم يحتوي عنوان URL على لغة، فسيتم إعادة التوجيه إلى اللغة الافتراضية. على سبيل المثال، سيتم إعادة توجيه /setup/ إلى /en/setup/.

هيكل المشروع

يتبع هيكل مشروع Astro.

src/
├── assets/
│   └── en/, ja/ ...
├── blog/
│   └── en/, ja/ ...
├── components/
│   └── i18n/
├── layouts/
├── pages/
│   ├── [lang]/
│   ├── en/, ja/ ...
│   ├── 404.astro
│   └── index.astro
├── styles/
├── content.config.ts
├── consts.ts
├── i18n.ts
└── locales.ts

src/components/i18n

دليل لمكونات واجهة المستخدم المستخدمة في المواقع متعددة اللغات.

src/pages

src/consts.ts

ملف للبيانات الثابتة التي يمكن استيرادها واستخدامها داخل المشروع. يمكن أيضًا حذفه إذا لم يكن مطلوبًا.

src/i18n.ts

ملف يحتوي على تعريفات الدوال المستخدمة في Astro i18n Starter. لا يوجد عادةً حاجة لتحرير هذا الملف.