I’m trying to add selected language code to the URL instead of storing it in a session or cookie.
My first time example below sets language manually but I want to make it dynamic based on user selection. How can I produce links below?
I know that Codeigniter URLs works as base_url/class_name/function_name/parametters
Note: My base URL is : http://localhost/internationalisation/
http://localhost/internationalisation/en/
http://localhost/internationalisation/en/welcome
http://localhost/internationalisation/en/products/1
http://localhost/internationalisation/en/products/2
http://localhost/internationalisation/en/aboutus
http://localhost/internationalisation/en/contactus
OR spanish version
CONTROLLER
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->helper('url');
//$this->lang->load('en', 'english');
$this->lang->load('es', 'spanish');
}
public function index()
{
$this->load->view('welcome_message');
}
}
/* EoF */
VIEW
<a href="<?php echo site_url('en'); ?>">English</a>
<br />
<a href="<?php echo site_url(); ?>es">Spanish</a>
<br /><br /><br /><br />
<h1><?php echo $this->lang->line('welcome'); ?></h1>
You should search the Wiki for this kind of things for example this library URI Language Identifier does what you want.