2015-01-17 5 views
0

클래스 플러그인의 메소드 내에서 get_post_type() 함수에 액세스하려고합니다. 또한 글로벌 개체로 게시물을 얻기 위해 노력하고 인수로 get_post_type에 삽입 : 지점에서 그것을 실행의 포스트 유형을 얻기 위해 더 조회 포스트가 없기 때문에클래스 플러그인의 메소드 내에서 get_post_type에 액세스

class myPlugin(){ 

    public function my_custom_function(){ 
     $post_type = get_post_type(); // returns null 
    } 

    public function __construct() { 
     $this->my_custom_function(); 
    } 
} 

new myPlugin(); 

답변

1

my_custom_function() 메소드가 null를 반환합니다. 수업 로딩을 지연 시키십시오.

변경 :

new myPlugin(); 

사람 :

function wpse_mp_load_class() { 
    new myPlugin(); 
} 
add_action('wp', 'wpse_mp_load_class'); 
+0

감사는 그런 식으로 일을하지만보다 다음과 같은 조치를 호출되는 응답하지 않는 내 아약스 방법 : ADD_ACTION ('wp_ajax_get_url_share_count' , array ($ this, "get_url_share_counts_ajax")); – tolga

+1

문제를 해결하기위한 초기 질문에 컨텍스트가 충분하지 않았습니다. 클래스가 바로 인스턴스화되는 이전의 방식으로 돌아갑니다. 당신의 생성자 안에서 메소드 호출을 같은 방법으로 지연 시키십시오. 예 : add_action ('wp', array ($ this, 'my_custom_function')); ' –

+0

둘 다 함께 작동합니다. 많은 감사합니다. – tolga

관련 문제