0
자, 이제 URL (http://stackoverflow.com/questions/4550670/cakephp-choosing-language-by-url
)을 기반으로 한 현지화 작업을 진행했지만 언어를 변경하는 링크를 만드는 방법은 무엇입니까? 나는 cakephp url - part 2로 언어 선택
<?php echo $html->link('English', array('language'=>'eng')); ?>
을 시도한은 보이지 않고는 URL의 끝에 (
www.example.com/blah/blah/language:eng
대신
www.example.com/eng/blah/blah
)에서
language:eng
를 추가하고 모든 언어를 전환하지 않습니다.
라우트는 이제 다음과 같이 :
function url($url = null, $full = false) {
if(!isset($url['language']) && isset($this->params['language'])) {
$url['language'] = $this->params['language'];
}
return parent::url($url, $full);
}
어떻게 그것이 있어야 방식으로 작동 링크를 설정 : 나는 또한 app_helper의 URL 방법을 오버라이드 (override) 한
Router::connect('/registered/:language/:controller',
array('prefix' => 'registered', 'registered' => true, 'layout'=> 'registered'),
array('language' => '[a-z]{3}'));
Router::connect('/registered/:language/:controller/:action/*',
array('prefix' => 'registered', 'registered' => true, 'layout'=> 'registered'),
array('language' => '[a-z]{3}'));
? 감사합니다.
라우터 url에서 언어 매개 변수를 제거하면 url이 원하는 방식으로 작동하지 않습니다. www.example.com/blah/blah/language:eng보다는 www.example.com/eng/blah/blah처럼 보이게해야합니다. – Elwhis