我第一次使用CodeIgniter 2.0來創建一個多語言網站,其中主頁包含幻燈片放映。我在筆記本電腦上開發它 - localhost/website /。CodeIgniter行爲,構造函數和路由
我正在使用routes.php文件來指定調用哪個語言函數來設置變量,具體取決於格式爲http://localhost/website/language/page_id/some-page-title
的url。因此http://localhost/website/en/1/Home-Page
給出PAGE_ID的英文第1
routes文件因此具有:
$route['default_controller'] = "content";
$route['en/(:num)/(:any)'] = "content/en/$1";
$route['de/(:num)/(:any)'] = "content/de/$1";
$route['es/(:num)/(:any)'] = "content/es/$1";
etc
在內容控制器中的語言功能(帶連接功能)的一個例子是:
public function en ($page_id) {
$language="en";
$lang_array['css']="base.css";
$this->get_content($page_id, $lang_array);
}
get_content函數然後執行所有操作。
內容控制器的指數函數但是看起來是這樣的:
public function index() {
//setting defaults for when arrive straight at home page or with no language in url
$page_id=1;
$lang_array['language']="en";
$lang_array['css']="base.css";
$this->get_content($page_id, $language);
}
我的問題是,當我去http;//localhost/website/
一切正常,包括幻燈片。然而,當我去的網址http://localhost/website/en/1/Home-Page
除了幻燈片中的圖片不會出現(即使它們都執行相同的代碼,並且當我查看頁面上的查看源時html輸出是相同的),所有東西都可以工作。
我能想到的唯一的事實是,如果我只是把http;//localhost/website/
然後索引函數將被稱爲激活構造函數,但如果我把http://localhost/website/en/1/Home-Page
然後索引,從而構造函數被繞過。但不知道爲什麼因此其他事情仍然工作,但圖片幻燈片不。這是你認爲的原因嗎?任何解決方案
感謝
湯姆·
真的讓我感到困擾的是,從兩個URL(簡單的根url和帶有語言組件的url)輸出的代碼是完全相同的。鏈接到圖像等都完全相同,也使用base_url()來解決路徑問題。如此迷茫。兩個相同的html如何顯示不同的結果? – 2014-11-09 08:46:10