다중 사이트 Wordpress에서 기본 사이트를 하위 사이트로 리디렉션


11

다중 사이트 워드 프레스가 있는데 주 사이트를 하위 사이트 중 하나로 리디렉션하고 싶지만 .htacecss의 리디렉션으로 인해 오류가 발생합니다. 기본 사이트를 하위 사이트로 리디렉션 할 수있는 방법이 있습니까? 그것은 불가능 해 보이지만 나는 워드 프레스 전문가가 아니기 때문에 확인하는 것입니다.

리디렉션은

리디렉션 301 www.example.com/main-site www.example.com/main-site/sub-site

아니면 다른 방법이 있다면?

답변:


10

parse_request조치를 사용하여 이를 수행 할 수 있습니다 . 기본 블로그에서이 플러그인을 활성화하십시오. 다음 코드를 .php 파일에 넣고 plugins 디렉토리에 업로드하십시오.

/*
Plugin Name: Redirect Main Site To Sub-Site
Description: Redirect 'main-site' to 'main-site/sub-site/'
Version: 0.1
Author: WPSE
Author URI: http://wordpress.stackexchange.com
License: GPL2
*/

add_action('parse_request', 'redirect_to_sub_site');
function redirect_to_sub_site(){
    global $wp;

    #Sniff requests for a specific slug
    if('main-site' === $wp->request){

        #The URL to redirect TO
        $url = 'http://www.example.com/main-site/sub-site/';

        #Let WordPress handle the redirect - the second parameter is obviously the status
        wp_redirect($url, 301);

        #It's important to exit, otherwise wp_redirect won't work properly
        exit;
    }
}

궁금한 점이 있으면 알려주세요.



1
@Toqeer 현상금을 수여해야합니다. 다시 돌려받지 못할 것입니다. ;)
kaiser

방금 수여, 나는 그것이 자동으로 수여된다고 생각했다 :)
Toqeer

최신 WordPress 버전으로 지금 시도했지만 작동하지 않습니다. 당신은 어떤 아이디어가 있습니까?
사용자

1
$ wp-> request를 확인하는 대신 is_main_site () 함수를 사용하여 확인하십시오.
Maor Barazany

3

나타납니다 $wp->request위의 답변에서 제안이 빈 문자열이 너무 대신이에 대한을 확인할 수 있습니다 (WPMS 4.5.2에서) 항상 is_main_site();.


2

수락 된 답변이 Wordpress 4.9.8에서 작동하지 않습니다. 다음은 업데이트 및 테스트 된 코드입니다. 이것을 활성 테마의 function.php 안에 넣으십시오.

<?php
function wpse66115_redirect_to_sub_site() {
  if ( is_main_site() ) {
    exit( wp_redirect( 'http://www.example.com/main-site/sub-site/', 301 ) );
  }
}
add_action( 'parse_request', 'wpse66115_redirect_to_sub_site' );
?>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.