2017-10-30 12 views
0
public function search() { 

    // start a standard search 
    $this->Prg->commonProcess(); 

    // process the URL parameters 
    $params = $this->Prg->parsedParams(); 

    // generate the Paginator conditions 
    $conditions = $this->Book->parseCriteria($params); 

    // add the conditions for paging 
    $this->Paginator->settings['conditions'] = $conditions; 

..... 
} 

나는 Croogo와 함께 검색 플러그인을 사용하고 있습니다. 완벽하게 작동합니다. rm이 내 플러그인 일 때 url은/rm/books/search? title = Harry + Potter입니다. 그러나 사이트를 다른 언어로 전환하면 영어 버전으로 리디렉션됩니다. 그래서/rm/books/search? chry/rm/books/search 대신 해리 + 포터 = 해리 + 포터CakeDC Search Plugin with language

어떻게 해결할 수 있습니까?

답변

0

요청 개체에 쿼리 매개 변수로 정의 된 언어가 있다고 가정합니다. allowedParams의 param 이름을 commonProcess에 전달할 수 있습니다. 그런 param을 가지고 있지 않으면 commonProcess 메소드를 오버로드하고 리다이렉트 빌드 로직을 향상시켜 다국어 경로를 지원할 필요가있다.

+0

결국이 문제를 해결하기 위해 플러그인 코어를 해킹해야합니다. 검색 플러그인 리디렉션은 언어 라우팅을 고려하지 않았습니다. – benone