thread我试图执行额外的英语,我的网站,默认的是法国,并且不使用任何前缀,所以像www.website.com
并切换到英语会是www.website.com/en/
,我想分别为英文和法文版的联系页面的网址,例如www.website.com/en/contact
和www.website.com/contact
。在此基础上如何生成的URL路径与两种语言在Laravel
我现在的routes.php文件
if (Request::segment(1) == 'en') {
App::setLocale(Request::segment(1));
Config::set('app.locale_prefix', Request::segment(1));
}
else {
App::setLocale('fr');
Config::set('app.locale_prefix', '');
}
Route::group(array('prefix' => Config::get('app.locale_prefix')), function()
{
Route::get(
'/',
function() {
//return "main page - ".App::getLocale();
return view('index');
}
);
Route::get(
'/contact/',
function() {
return view('contact');
});
});
我的头文件,其中将标记图标切换语言
@if (Lang::locale() == 'fr')
<a href="{{ url('/en/' . Request::segment(1)) }}"><img src="{{asset('images/GB.png')}}"></a>
@elseif (strcasecmp(Request::segment(1), 'en') == 0 && Request::segment(2) != NULL)
<a href="{{ url(Request::segment(2)) }}"><img src="{{asset('images/FR.png')}}"></a>
@else
<a href="{{ url('/') }}"><img src="{{asset('images/FR.png')}}"></a>
@endif
和我生成URL的方式来
<a class="block-title" href="{{ (strcasecmp(Request::route()->getPrefix(), '/en') == 0) ? url('en/contact') : url('/contact') }}">CONTACT</a>
我会喜欢知道一个更清洁的方式来产生这些,以及如何我可以得到英文主页网址是www.website.com/en/
我ns的www.website.com/en
非常感谢!
谢谢很多 !我会详细介绍这条线路()的工作原理。 – adaba
@adaba:不客气。我刚刚添加了一些链接到文档:) – Moppo