TacoTranslate
/
التوثيقالتسعير
 
  1. مقدمة
  2. البدء
  3. الإعداد والتكوين
  4. استخدام TacoTranslate
  5. التصيير على جانب الخادم
  6. الاستخدام المتقدم
  7. أفضل الممارسات
  8. معالجة الأخطاء وتصحيحها
  9. اللغات المدعومة

أفضل الممارسات

ضع عناوين URL في المتغيرات

عند ترجمة السلاسل التي تحتوي على عناوين URL أو بيانات مماثلة، يُعتبر من الممارسات الجيدة وضع هذه العناوين داخل متغيرات ثم الإشارة إليها ضمن قوالبك.

<Translate
	string={`Click <a href="{{url}}">here</a>`}
	variables={{url: 'https://tacotranslate.com'}}
/>

استخدام تسميات ARIA

عند ترجمة نصوص العناصر التفاعلية مثل الأزرار، من المهم تضمين تسميات ARIA لضمان إمكانية الوصول. تساعد تسميات ARIA قارئات الشاشة على توفير معلومات وصفية حول وظيفة العنصر.

على سبيل المثال، إذا كان لديك زر يتيح للمستخدمين نسخ النص من كتلة الكود، يمكنك استخدام الخاصية aria-label لتوفير وصف واضح:

<Translate
	aria-label={useTranslation('Copy to clipboard')}
	string="Copy"
/>

هناك شيء في هذا يبدو ميتا للغاية.

مصفوفة الأصول العالمية وأصول المكونات المتعددة

يعمل هذا النمط فقط عند استخدام Next.js Pages Router.

عند العمل مع تطبيقات أكبر، من المفيد تقسيم السلاسل والترجمات إلى مصادر متعددة وأصغر. تساعد هذه الطريقة في تقليل حجم الحزم وأوقات النقل، مما يضمن ترجمة فعالة وقابلة للتوسع.

بينما تكون هذه العملية بسيطة عند العرض فقط على جانب العميل، يصبح إدارة المصادر معقدًا بسرعة عند جلب الترجمات لعرض جانب الخادم. ومع ذلك، يمكنك أتمتة إدارة المصادر باستخدام مصفوفة origins الخاصة بعميل TacoTranslate.

راجع هذا المثال، حيث قمنا بفصل مكوناتنا وصفحاتنا إلى ملفات منفصلة.

components/pricing-table.tsx
import TacoTranslate, {Translate} from 'tacotranslate/react';
import tacoTranslate from '../tacotranslate-client';

// Set an origin name for this component
const origin = 'components/pricing-table';

// Push the origin into the origins array as this file is imported
tacoTranslate.origins.push(origin);

export default function PricingTable() {
	return (
		<TacoTranslate origin={origin}>
			<Translate string="Pricing table" />
			// ...
		</TacoTranslate>
	);
}
pages/pricing.tsx
import TacoTranslate, {Translate} from 'tacotranslate/react';
import getTacoTranslateStaticProps from 'tacotranslate/next/get-static-props';
import tacoTranslateClient from '../tacotranslate-client';
import PricingTable from '../components/pricing-table';

const origin = 'pages/pricing';
tacoTranslateClient.origins.push(origin);

export default function PricingPage() {
	return (
		<TacoTranslate origin={origin}>
			<Translate string="Pricing page" />
			<PricingTable />
		</TacoTranslate>
	);
}

// We will now fetch translations for all imported components and their origins automatically
export async function getStaticProps(context) {
	return getTacoTranslateStaticProps(context, {client: tacoTranslateClient});
}

شاهد أمثلة التصيير على جانب الخادم لمزيد من المعلومات حول getTacoTranslateStaticProps.

معالجة الأخطاء وتصحيحها

منتج من Nattskiftet