الوثائق / Laravel
ترجمة Laravel لـ Blade، آلية
انقل النصوص الثابتة في طرق عرض Laravel Blade إلى استدعاءات __() مع ترجمات lang/<locale>.json مفهرسة بالنص، في أمر واحد أو طلب سحب واحد.
كيف يعمل
يصبح النص في طرق عرض Blade {{ __('Hi :name, welcome back', ['name' => $user->name]) }}: سلاسل ترجمة JSON الخاصة بـ Laravel، مفهرسة بالنص نفسه، مع عناصر نائبة :name.
التوجيهات مثل @if تقسم الجمل؛ لا يتم الخلط بين عناوين البريد الإلكتروني والتوجيهات.
تصبح صيغ الجمع ({{ $n == 1 ? 'item' : 'items' }}، Str::plural('item', $n)) trans_choice(':count item|:count items', $n)، أشكال كل لغة بالترتيب الذي تختاره Laravel.
قبل وبعد
المخرجات الحقيقية للمحرك لهذا الملف. في تشغيل حقيقي، يقوم النموذج المستضاف بتسمية المفاتيح من السياق.
@extends('layouts.app')
@section('content')
<h1>Hi {{ $user->name }}, welcome back</h1>
<input placeholder="Search products">
@endsection@extends('layouts.app')
@section('content')
<h1>{{ __('Hi :name, welcome back', ['name' => $user->name]) }}</h1>
<input placeholder="{{ __('Search products') }}">
@endsection{
"Hi :name, welcome back": "Hi :name, welcome back",
"Search products": "Search products"
}ما يضيفه الإعداد
الإعداد الأول يقوم بإعداد سلاسل ترجمة Laravel إذا لم يكن المشروع يحتوي عليه بعد:
lang/<locale>.jsonلكل لغة- برنامج وسيط
SetLocaleفي مجموعة الويب:?locale=، ثم ملف تعريف ارتباطlang، ثم Accept-Language
قم بتشغيله
يتطلب CLI إصدار Node.js 22 أو أحدث، لا شيء آخر: npx يقوم بتشغيله دون إضافة package.json إلى المشروع. لا يوجد Node على جهازك؟ إجراء GitHub أدناه يقوم بتشغيله لك.
npx localize-dev login
# Preview, then write the changes
npx localize-dev run --dry-run -l es,fr,de
npx localize-dev run -l es,fr,de
# Or open a pull request instead
npx localize-dev pr -l es,fr,deأو أضف إجراء GitHub واحصل على طلب سحب عند كل دفعة. جربه على الكود الخاص بك أولاً في ملعب.