سلام دوستان بنده میخوام برخی ارور ها و صفحه ها رو اصولی به فارسی ترحمه کنم
تون نت سرچ کردم یه فایل دانلود کردن که تو فولدری به نام fa چن تا فایل به نام های pagination.php reminders.php validation.php
رو کنار فولدر en گداشتم و از فایل app.php
'locale' => 'fa',
و
'timezone' => 'Asia/Tehran',
کردم.. ولی فارسی نشدن!!
مشکل چیست؟!
مرسی
@hesamnn
ببینید وقتی میگید app.Registerd
یعنی بره توی اون پوشهی زبانتون مثلا (fa) بعد از اونجا داخل فایل app.php و از اون آرایهای که برمیگردونه Registerd رو برای شما بنویسه.
خب شما که میگین سه تا فایل بیشتر ندارین توی اون پوشهتون! پس باید مثلا app.php رو اضافه کنید اول
بعد آرایه زیر رو توش بزارید.
return [
'Registerd' => 'ثبت نام'
];
بعد از این دیگه درست کار میکنه
من چون میخوام اصولی انجامش بدم به مشکل برخوردم
مثلا تو فایل app.balde.php
<a class="nav-link" href="{{ route('register') }}">{{ __('Register') }}</a>
این
{{ __('Register') }}
به کجا داره اشاره میکنه چون من تو فایلای زبان register پیدا نمیکنم
مرسی
__()
این کار همون
@lang()
رو میکنه ولی اگه معادل اون کلمه پیدا نشه همون رو نمایش میده، این توضیح داده
https://tutsforweb.com/laravel-underscores-__-function-for-localization-based-translations/
اگه میخوای از این استفاده کنی باید اسم فایل رو هم بش اشاره کنی، اینطوری تست کن ببین
__('app.Registerd')
این میره لمه معادل registerd رو توی فایل app میخونه، تا جایی که میدونم، تست کنید
از دایرکتیو lang@ در Blade هم میتونی استفاده کنی:
@lang('pages/registeration.register_link')
دایرکتیو بالا متنی رو از آرایه داخل فایل resources/lang/fa/pages/registration.php
و از کلید register_link اون دریافت میکنه
برای اینکه چک کنی، آیا زبان اپلیکیشن رو به درستی تغییر دادی یا نه:
var_dump(app()->getLocale());
{{ __('Register') }}
همینی که میبینید منظورش این هست که برو از پوشه زبانها و از اونجا زبانی که کاربر میخواد(خودتون باید مشخص کنید از کجا بگیره. مثلا بگید اخرین پارامتر url اگر fa بود یعنی locale فارسی هست) مقدار رو در اون زبان بگیره.
لینک پایین خیلی سریع کارتون رو حل میکنه در حد ۵ دقیقه یه نگاه بهش بکنید.
https://laravel.com/docs/5.7/localization
@coaradsupp
@ali.bayat
@MehdiAghighi
بسیار ممنونم دوستان
من فک کنم مشکل از اینه که اضن من این مسیر resources/lang/fa/pages/registration.php از fa به بعد رو دیگه ندارم !!
داخل fa من فقط سه تا فایل pagination.php reminders.php validation.php دارم !! از composer نصب کردم و از vendor انتقالش دادم به فئلدری که در اون تنها زبان en وجود داشت
var_dump هم زدم و 2string fa رو اورد ینی درست بوده تغییر زبان!!!
حالا من فکر میکنم مشکل از اون فایلی که من ندارمه!! ینی registration.php تو مسیر resources/lang/fa/pages/registration.php
یانه ؟!؟!
من pages رو برای نمومه قرار دادم که استفاده از فولدر رو هم مثال زده باشم..
میتونید فایل هارو توی خود fa هم بگذارید
@hesamnn
ببینید وقتی میگید app.Registerd
یعنی بره توی اون پوشهی زبانتون مثلا (fa) بعد از اونجا داخل فایل app.php و از اون آرایهای که برمیگردونه Registerd رو برای شما بنویسه.
خب شما که میگین سه تا فایل بیشتر ندارین توی اون پوشهتون! پس باید مثلا app.php رو اضافه کنید اول
بعد آرایه زیر رو توش بزارید.
return [
'Registerd' => 'ثبت نام'
];
بعد از این دیگه درست کار میکنه
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟