2011-03-22 6 views
0

magento의 Catalogsearch를 수정하고 싶습니다. 그래서 나는이 inchu 기사를 따랐다. - http://inchoo.net/ecommerce/magento/advanced-search-in-magento-and-how-to-use-it-in-your-own-way/ 나는 그것을 얻었다. www.site.com/catalogsearch/custom/Magento URL 다시 쓰기 옵션

하지만 그 대신이의 - -

그래서 내 URL이되었다 마지막 컨트롤러 부분 (/ 사용자 정의 /), 매개 변수가 검색 엔진 최적화 친절해야 원하는 (같은/스타일/Barbera/대신? style = Barbera). 그래서 나는 이런 것을 원한다.

www.site.com/catalogsearch/custom/style/Barbera/year/1980/

및 컨트롤러

에이 부분

스타일/베라가/년/1980 년/구문 분석 할 필요가 style = Barbera year = 1980이고 카탈로그가있는 카탈로그 모델에 대해서는 질의해야합니다.

이 사용자 정의 url을 가진 경험있는 사람은 모든 매개 변수가있는 컨트롤러에 대한 옵션을 다시 작성하십시오.

도와주세요.

미리 감사드립니다.

답변

1

귀하가 진술 한 바를 정확하게 (쉽게) 수행 할 수 있는지는 잘 모르겠습니다. 당신이

www.site.com/catalogsearch/custom/에게로 원하는 URL을 변경하는 경우 인덱스/스타일/베라가/년/1980/

다음을 달성 할 수 있습니다. 여분의 "색인"을 주목하십시오. 이를 작동 시키려면 커스텀 컨트롤러의 함수가 indexAction()인지 확인해야합니다.

$style = $this->getRequest()->getParam('style'); 
$year = $this->getRequest()->getParam('year'); 
//OR if you aren't accessing in a controller you might need to do this... 
$style = Mage::app()->getRequest()->getParam('style'); 
$year = Mage::app()->getRequest()->getParam('year'); 

는이 같은 것을 할 것입니다 URL을 쓰는하려면 : 컨트롤러의 매개 변수를 구문 분석하려면 같은 것을 할 필요가

Mage::getUrl('catalogsearch/custom/index', array('style' => 'Barbera', 'year' => 1980)); 

을하지만 당신은 필요하지 죽은 세트가있는 경우 URL에있는 "색인"은 그 방법을 확신 할 수있는 방법이 확실합니다.

+0

최고입니다. 감사합니다 sdek – Elamurugan