جستجو در آکادمی تخصصی دویکس

صفحه نخست » مقالات » لاراول » دو یا چند زبانه کردن لاراول
لاراول
laravel-translation

دو یا چند زبانه کردن لاراول

بازدید: 27
5 / 5.00
[ 3 رای ]

معرفی

در این مقاله چند قسمتی ، ما روند ساخت و نگهداری یک بسته منبع باز برای Laravel را مستند می کنیم. ما همه چیز را از بوت استرپینگ بسته برای هماهنگ سازی درخواست شروع و ایجاد می کنیم.

چه خواهد ساخت

در این سلسله آموزش ما یک بسته ترجمه برای تکمیل ویژگی های محلی Laravel ایجاد خواهیم کرد.

محلی سازی پخته شده در Laravel به برنامه شما اجازه می دهد که چندین محل را اداره کند و براساس آن محتوای مورد نظر را ترجمه کند. اداره مکان های مختلف یک فرایند سه مرحله ای است:

  • گرفتن محتوا از قالب های خود و انتقال به فایل های زبان ذخیره شده در هر یا JSON یا PHP به سبک آرایه ها.
  • با استفاده از یکی از روش های ترجمه ی لارول، محتوای آن را در قالب های خود تگ کنید
  • تنظیم محلی برای برنامه در app.php

تصور کنید که می خواهید محتوا را در زبان انگلیسی و اسپانیایی خدمت کنید، و شما می خواهید از فایل های زبان JSON استفاده کنید. یک فایل به نام en.json ایجاد کنید و یکی دیگر از آن es.json در دایرکتوری resources/lang.

در هر فایل، یک شی ایجاد کنید و یک کلید اضافه کنید.

// en.json
{
    “hello”: “hello”
}
// es.json
{
    “hello”: “hola”
}

برای رندر کردن در قالب، شما می توانید از کمک زیر استفاده کنید:

// some_file.blade.php
{{ __('hello') }}

حالا اگر app.locale شما به en تنظیم شده باشد، hello رندر می شود و اگر تنظیم شده باشد، شما آن را حدس زدید، نمایش hola را ارائه می دهد.

همانطور که پروژه شما رشد می کند، مدیریت این فایل ها می تواند چالش برانگیز باشد، و بسته ما می تواند به این چالش کمک کند. ما توانایی اسکن پروژه خود را برای از دست دادن کلید های ترجمه و اضافه کردن ترجمه های از دست رفته به فایل های زبان خود را ساخت. ما زبان های همگام سازی میان چندین محل و همچنین اضافه کردن یک راننده پایگاه داده برای کمک به محیط های چند سرور انجام می شود.

ما ترکیبی از Tailwind CSS و Vue.js را برای ایجاد یک رابط کاربر برای مدیریت ترجمه استفاده خواهیم کرد که با بسته ارائه خواهد شد.

UI به شما اجازه می دهد که ، به روز رسانی موجود و حذف ترجمه های موجود و همچنین اضافه کردن محلی جدید دسترسی داشته باشید.

دلیل این کار چیست؟

من این کار را به دو دلیل انجام می دهم اول، مدیریت زبان چیزی است که من در بسیاری از پروژه هایم نیاز دارم. اگرچه بسته های خوب وجود دارد، هیچ کدام به طور کامل منحصر به فرد مورد نیاز من نیست.

دوم، من در حال حاضر پروژه های منبع باز را حفظ نمی کنم، و این چیزی است که من همیشه می خواستم انجام دهم. این مجموعه یک تجربه یادگیری برای من خواهد بود و من احساس می کنم که این پروسه به ثبت رسیده است، امیدوارم برای دیگران که به دنبال یک چالش هستند، مفید باشد.

با قسمت دوم این مقاله آموزشی همراه باشید همراه ما باشید.

شاید این مطالب برای شما جذاب باشند