autorenew

الإعداد

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

npm create astro@latest -- --template yacosta738/astro-cms

التكوين

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-cms-dpv.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 CMS يدير عملية إعادة التوجيه باستخدام 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 CMS. لا يوجد عادةً حاجة لتحرير هذا الملف.