2012-10-11 6 views
0
  
add_filter('query_vars', 'add_query_vars'); 
  
function add_rewrite_rules($aRules) { 
    $aNewRules = array('societies/([^/]+)/?$' => 'index.php?pagename=societies&sid=$matches[1]'); 
    $aRules = $aNewRules + $aRules; 
    return $aRules; 
} 
  
add_filter('rewrite_rules_array', 'add_rewrite_rules'); 


function add_query_vars($aVars) { 
    $aVars[] = "page_id";    // represents the name of the variable as shown in the URL 
    return $aVars; 
} 
  
add_filter('query_vars', 'add_query_vars'); 

그래서 리디렉션에서 맞춤 변수를 사용하려고합니다. 현재 zzz.net/dashboard?page_id=2278과 같은 사이트 섹션으로 이동하는 리디렉션이 있지만 404 페이지가 표시되지 않아이 코드를 추가했습니다. 주요 문제는 내가하는 일에 대한 최선의 생각이 없다는 것입니다.wordpress 리디렉션이 작동하지 않습니다.

리디렉션에서 page_id = 2278 등을 사용하려는 이유는 대시 보드 페이지에 들어가기 전에 사용자가 어디서 왔는지 알 수 있기 때문입니다.

조언과 방향이 더 도움이 될 수 있습니다. 어느 쪽이든 그것을 보러 잠시 시간을내어 주셔서 감사합니다.

+0

호기심에서 2278의 ID를 가진 Wordpress Page가 있습니까? – maiorano84

+0

고급 사용자 정의 필드를 사용하여 양식의 특정 부분을 지정합니다. 이 양식은 page_id = 2278 등의 참조를받습니다. 이것은 누군가가 작성한 양식/청원서를 알기위한 것입니다. 그렇게하면 자신의 "대시 보드"에서 맞춤 정보를 제공 할 수 있습니다. –

+0

그건 내 질문에 대답하지 않습니다. page_id 매개 변수는 인식 된 Wordpress GET 변수입니다. 2278의 ID를 가진 Wordpress 페이지가 없다면, 나는 당신이 404를 얻고 있다는 사실에 전혀 놀라지 않을 것입니다. – maiorano84

답변

0

'page_id'라는 GET 변수는 페이지 개체를 쿼리 할 때 Wordpress 코어에서 사용됩니다. 당신은 'P = 2786'에 쿼리를 변경한다면

반대로, 다음, 워드 프레스 시도하고 당신의 URL에서 해당 변수를 가짐으로써 2786.

의 ID와 게시물에 대한 워드 프레스는 점점 검색 것 혼란스럽고 귀하의 GET 요청에 의해 정의 된 ID의 페이지를 반환하려고합니다. 이와 같은 이름 충돌을 방지하려면 전역 범위 내에서 액세스 할 수있는 명명 된 변수에 접두사를 추가하는 것이 가장 좋습니다.

주요 Wordpress 변수와 충돌하지 않도록 GET 변수의 이름을 다른 것으로 변경하십시오 (예 : WJ_page_id).

+0

부적처럼 잘 작동 해주셔서 감사합니다, 양해 해 주셔서 감사합니다. –

+0

문제 없습니다. 간과하기 쉬운 내용이므로 다른 사용자가 귀하와 동일한 질문을했을 경우를 대비하여 답을 표시하십시오. – maiorano84

관련 문제