رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
کتابخانه language در codeigniter
#1
برای کار با کتابخانه language در فریم ورک کدایگنایتر این بخش راه اندازی شده تا با کمک جناب شهرکی یادبگیریم چطور میتونیم از این بخش استفاده کنیم و نرم افزار های چند زبانه طراحی کنیم

اولین سوالی که چطور میتونیم ادرس هامون رو جوری بسازیم که زبان هم داخلش باشه

http:///example.com/en/news/show/id/2

به این شکل اصولا میشه کار کرد یا شیوه دیگه ای داره
پاسخ
تشکر شده توسط:
#2
برای استفاده از قابلیت چند زبانه در کد ایگنایتر اول نیاز داریم که helper  زبان رو لود کنیم
برای اینکار باید به مسیر زیر بریم

application/config/autoload.php

و در قسمت helper  helper زبان رو لود میکنیم

$autoload['helper'] = array('language','url');


مرحله بعد نیاز داریم به ازای هر زبانی که قصد استفاده در نرم افزارمونورو داریم یک فایل در بخش application/language اضافه کنیم

بطور مثال برای زبان فارسی به ادرس زیر میریم

application/language
و یه فولدر به نام persian ایجاد میکنیم

بعد از ایجاد فولدر در این بخش نیاز داریم که فایلهای مورد نظر برای این زبان رو ایجاد کنیم
حتما توجه کنید که انتهای اسم فایلها _lang قرار بدید

مثال: error_lang.php

داخل این فایلها آرایه $lang ایجاد میکنیم با ایندکس هایی که مد نظرمونه

مثال :

$lang['title'] = 'hello';



برای زبان فارسی هم در فایل مرد نظرتون در فولدر persian همین مقدار با ترجمه فارسی رو قرار میدید


$lang['title'] = 'سلام ';



در فایل config در بخش application قسمت زبان مراجعه میکنید و مقدار اون رو برابر با زبانی که مد نظرتون هست قرار میدید

بعد از انجام این مراحل و قبل از استفاده از فایل های زبان مورد نظرتون باید اون زبان مورد نظرتون رو لود کنید

بهتره در قسمت کانستراکتور کنترلرتون اینکار یکبار انجام بشه تا تو همه متد ها قابل دسترس باشه

قسمت اول نام فایل ترجمه ای هست کهنیاز دارید و قسمتدوم نام فولدر زبان مد نظرتون
بطور مثال ما فایل home از فولدر persian رو لود میکنیم


$this->lang->load('home','persian');



حالا به راحتی با صدا کردن ایندکس های داخل اون فایل میتونید به ترجمه های موجود دسترسی داشته باشید


     public function index(){
         $data['readmore'] = lang('readmore');
         $data['title']    = lang('title');
         $this->layout_admin->view('admin/home/home',$data);
     }


پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان