get_site_option () 과 get_blog_option () 의 차이점을 이해하려고합니다 .
있습니까 블로그 및 사이트의 다른 두 가지? 이 질문이 기본적으로 보이지만 WordPress 웹 사이트를 언급 할 때 항상 두 용어를 매우 느슨하게 사용했습니다 (동일한 의미). 차이가 있는지 궁금합니다.
get_site_option () 과 get_blog_option () 의 차이점을 이해하려고합니다 .
있습니까 블로그 및 사이트의 다른 두 가지? 이 질문이 기본적으로 보이지만 WordPress 웹 사이트를 언급 할 때 항상 두 용어를 매우 느슨하게 사용했습니다 (동일한 의미). 차이가 있는지 궁금합니다.
답변:
get_option()
현재 블로그에 대한 옵션을 반환합니다 .
단일 사이트 설치에서는 현재 블로그가 유일한 블로그입니다. 따라서 get get_option()
은 옵션을 반환합니다.
get_site_option()
네트워크 전체에서 옵션을 검색하는 데 사용됩니다. 즉, 네트워크의 모든 사이트에서 동일한 옵션을 얻을 수 있습니다.
이 기능을 단일 설치에서 사용하면 일반적으로 와 동일한 것을 반환합니다 get_option()
. get_site_option()
에 의해 트리거되지 않은 트리거 필터 후크 때문에 값이 변경 될 수 있습니다 get_option()
.
한 번 참고 $wpdb->options
표는 블로그 특정, 네트워크 전체 옵션은에 저장되어있는 $wpdb->sitemeta
멀티 사이트 설치의 특정 테이블.
get_blog_option()
옵션 이름을 첫 번째 인수로받지 않는 세 함수 중 유일한 함수이지만 첫 번째 인수는 $blog_id
입니다.
실제로 다중 사이트 설치에서 ID가 알려진 특정 블로그에서 옵션을 검색하는 데 사용됩니다.
이 기능은 다음과 같습니다.
switch_to_blog( $blog_id );
$value = get_option( $option, $default );
restore_current_blog();
return $value;
$blog_id
현재 블로그 ID와 동일한 경우 WordPress는 해당 switch_to_blog
부분을 건너 뛰고을 호출합니다 get_option()
.
이 기능은 wp-includes/ms-blogs.php
다중 사이트 설치용으로 만로드 된 파일에서 정의 되므로 get_blog_option()
단일 사이트 설치에서는 정의되지 않습니다.
get_site_option()
-네트워크 전체 옵션을 얻습니다. 이 옵션은 일반적으로 멀티 사이트 설정의 네트워크 관리자 설정 섹션에 추가됩니다. 50 개의 사이트가 있다면 50 개의 다른 사이트로 이동하여 동일한 옵션 값을 설정하는 것이 어려울 것입니다. 대신 옵션 값을 한 번 설정하여 모든 사이트에 대해 네트워크 전체에 적용 할 수 있습니다. http://codex.wordpress.org/Function_Reference/get_site_option을 참조하십시오 .
get_blog_option()
-특정 사이트에 대한 옵션의 가치를 얻을 수 있습니다. 한 가지 예는 각 사이트에 대한 사용자 별 옵션의 값을 얻는 것입니다. 따라서 사용자가 속한 모든 사이트를 가져 와서 사이트 ID 목록을 반복 get_blog_option()
하고 blog_id
및 옵션 이름을 전달 하여 결과를 다시 얻을 수 있습니다. 다음과 같은 기능을 수행하는 편리한 기능입니다.
switch_to_blog( $id );
$value = get_option( $option_name );
restore_current_blog();
http://codex.wordpress.org/Function_Reference/get_blog_option을 참조하십시오 .
tl; dr : get_site_option()
네트워크 전체의 가치를 get_blog_option()
얻고, 먼저 해당 사이트로 직접 전환 할 필요없이 특정 사이트의 특정 가치를 얻습니다.