추가 쿼리 var
1 대답
- 투표
검색 재 작성 규칙을 수정하려면 search_rewrite_rules
필터에 연결할 수 있습니다. 게시물 유형과 일치하는 추가 재 작성 규칙을 직접 추가하거나 기본 "검색 재 작성 구조"를 변경하여 게시물 유형도 포함한 다음 규칙을 다시 생성 할 수 있습니다 (표준 하나,페이징 포함 하나) 피드 용 2 개). WP_Rewrite::generate_rewrite_rules()
모든 "디렉토리 수준"에서 규칙을 생성 하면 /search/[keyword]/section/[post_type]/
,/search/[keyword]/section/
및 /search/[keyword]/
. 중간 규칙은 필요하지 않지만 유지해도 문제가되지 않습니다.
add_filter( 'search_rewrite_rules', 'wpse15418_search_rewrite_rules' );
function wpse15418_search_rewrite_rules( $search_rewrite_rules )
{
global $wp_rewrite;
$wp_rewrite->add_rewrite_tag( '%post_type%', '([^/]+)', 'post_type=' );
$search_structure = $wp_rewrite->get_search_permastruct();
return $wp_rewrite->generate_rewrite_rules( $search_structure . '/section/%post_type%', EP_SEARCH );
}
규칙을 확인하려면 my Rewrite 분석기 플러그인 <을 사용하세요./a>.
To modify the search rewrite rules you can hook into the search_rewrite_rules
filter. You can either add the extra rewrite rules that match post types yourself, or you can change the default "search rewrite structure" to also include the post type and then re-generate the rules (there are four rules: one standard, one with paging and two for feeds). Because WP_Rewrite::generate_rewrite_rules()
generates rules at every "directory level", you will get rules for /search/[keyword]/section/[post_type]/
, /search/[keyword]/section/
and /search/[keyword]/
. You don't need the middle rule, but it won't hurt to keep it in.
add_filter( 'search_rewrite_rules', 'wpse15418_search_rewrite_rules' );
function wpse15418_search_rewrite_rules( $search_rewrite_rules )
{
global $wp_rewrite;
$wp_rewrite->add_rewrite_tag( '%post_type%', '([^/]+)', 'post_type=' );
$search_structure = $wp_rewrite->get_search_permastruct();
return $wp_rewrite->generate_rewrite_rules( $search_structure . '/section/%post_type%', EP_SEARCH );
}
To check the rules, use my Rewrite analyzer plugin.
wp_redirect
및template_redirect
후크를 사용하여 추가 쿼리 변수가 포함 된 검색 URL을 예쁜 영구 링크로 다시 작성하는 방법을 알고 싶습니다.http://example.com?s=africa
를http://example.com/search/africa
로 :하지만 방문자가 검색 범위를 좁힐 수 있도록 Relevanssi 플러그인과 함께 선택 드롭 다운을 사용하고 있습니다. 특정 게시물 유형. 이렇게하면
post_type
쿼리 변수가 추가됩니다.http://example.com?s=africa&post_type=features
.http://example.com/search/africa/section/features
와 같은 URL을 갖고 싶습니다.Nice Search 코드로 인해post_type 쿼리 변수가 손실됩니다. 그래서 다음 코드를 시도했습니다.
하지만 WordPress는 이제 검색어가
africa/section/features
라고 생각합니다.검색어와 검색어 변수를 모두 멋진 영구 링크에 보관할 수있는 방법이 있습니까?
감사합니다 사이먼