2011-01-26 1 views
0

는의가이 같은 URL이 에보URL 세그먼트를 기반으로 리디렉션

modx에 입력 있다고 가정 해 봅시다

www.zipit.com.org/reference/toamovie/

나는라는 페이지가있는 경우 toamovie 부모가 누군가 reference

하지만라고 그 URL을 입력하십시오 나는 이것과 동등한 일을하기를 원합니다.

www.zipit.com.org/reference.html?myvar=toamovie ,추가, 또는 더 중요한 것은, 내가 더 이렇게 될 결과를 싶습니다 12 문서

`www.zipit.com.org/reference.html?myid=12 '의 ID가 될 wouls 곳

이것이 modx Evolution에서 가능한지 궁금합니다. 어쨌든 이것은 첫 번째 부분 인 htaccess 마법과 관련이 있어야한다고 생각합니다. 문서의 가치를 어떻게 얻을 수 있습니까? 이것은 htaccess로는 거의 접근 할 수 없으므로 데이터베이스에 연결하여 그 값을 얻을 수있는 또 다른 부분이 필요할 것입니다.

답변

0

"OnPageNotFound"이벤트에서 호출되는 사용자 정의 플러그인이 있어야합니다.

<?php 
$url = $_SERVER['REQUEST_URI']; //get the url   
//split the url into pieces and remove empty values 
$pieces = array_filter(explode('/', $url)); 

//reset the array keys 
$temp = array(); 
foreach ($pieces as $piece) { 
    $temp[] = $piece; 
} 
$pieces = $temp; 

//basic checking of the url 
if (count($pieces) == 2) { 
    $modx->sendRedirect('http://www.zipit.org/' . $pieces[0] .".html?myid=" . $pieces[1]); 
} 
?> 

플러그인은 PHP 태그로 싸여 있지 않습니다. 또한이 스크립트는 잘못된 URL을 zipit.org로 전달합니다. 일부 오류 처리는 아마도 바람직 할 수 있습니다.