ورود / ثبت نام سبد خرید 0
سیستم localization فریمورک لاراول این امکان را به برنامه نویسان وب میدهد تا وب سایت های چند زبانه را به راحتی بسازند.
شما نیاز دارید که رشته های ترجمه شده ی هر زبان را درون فایلهایی در مسیر resources/lang ذخیره سازی کنید و هر زبان یک دایرکتوری یا مسیر اختصاصی خود را داشته باشد.
همه ی فایل های زبان های مختلف باید یک آرایه که شامل یک سری داده های string یا رشته ای است را باید شامل باشد و آنرا return بکند . همانند مثال زیر :
<?php return [ 'welcome' => 'Welcome to the application' ];
برای درک بهتر ساخت سایت چندزبانه توسط لاراول مثال زیر را در نظر داشته باشید.
مثال
قدم 1 - ما قصد داریم سه زبان مختلف برای سایت ایجاد کنیم که شامل English, French و German باشد. برای زبان انگلیسی یک فایل در مسیر resources/lang/en/lang.php درست میکنیم و محتویات زیر را درون آن مینویسیم:
<?php return [ 'msg' => 'Laravel Internationalization example.' ]; ?>
قدم 2 - برای زبان فرانسوی فایلی در مسیر resources/lang/fr/lang.php بسازید و کد زیر را درون آن بنویسید.
<?php return [ 'msg' => 'Exemple Laravel internationalisation.' ]; ?>
قدم 3 - برای زبان آلمانی فایلی را در مسیر resources/lang/de/lang.php بسازید و متن زیر را درون آن بنویسید.
<?php return [ 'msg' => 'Laravel Internationalisierung Beispiel.' ]; ?>
قدم 4 - با استفاده از دستور آرتیسان زیر در ترمینال یا کامند پروم یک کنترلر جدید به نام LocalizationController بسازید.
php artisan make:controller LocalizationController --plain
قدم 5 - نتیجه ی اجرای دستور بالا باید مشابه تصویر زیر باشد:
قدم 6 - کدهای زیر را در فایل کنترلر ساخته شده در مسیر app/Http/Controllers/LocalizationController.php بنویسید:
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; class LocalizationController extends Controller { public function index(Request $request,$locale) { //set’s application’s locale app()->setLocale($locale); //Gets the translated message and displays it echo trans('lang.msg'); } }
قدم 7 - سپس فایل route های لاراول خود را باز کنید و کدهای زیر را درون آن بنویسید . توجه کنید که آرگومانی با نام {locale} وجود دارد که نماینده ی زبان است :
Route::get('localization/{locale}','LocalizationController@index');
قدم 8 - حالا مرورگر خود را باز کنید و به مسیر فریمورک لاراول خود و سپس مسیر /localization/en بروید . مسیر کامل باید چیزی مشابه زیر باشد:
http://localhost:8000/localization/en
قدم 9 - نتیجه ی نمایش داده شده در مرورگر باید مشابه زیر باشد:
قدم 10 - حالا برای دیدن زبان فرانسوی در مرورگر خود به آدرس زیر بروید :
http://localhost:8000/localization/fr
قدم 11 - حالا باید نتیجه مشابه تصویر زیر باشد که درمرورگر شما نمایش داده خواهد شد :
قدم 12 - حالا برای دیدن زبان آلمانی سایت از طریق مرورگر به آدرس زیر مراجعه کنید.
http://localhost:8000/localization/de
قدم 13 - نتیجه ی نمایش داده شده در مرورگر باید به شکل زیر باشد :
این از آموزش ساخت سایت چند زبانه در فریمورک لاراول بصورت خیلی ساده بود مطمئنا فرآیند طراحی سایت بصورت چندزبانه کمی پیچیده تر است ولی با تلاش میتوانید به راحتی آنرا پیاده سازی کنید.
اتمام درس
محصولات برگزیده مناسب شما