2017-02-01 4 views
1

앞면에있는 페이지가 열려 있거나 링크를 클릭했는지 추적해야하는 WordPress 플러그인을 만들고 있습니까? 나는 이것에 대해 일종의 비어 있습니다. 아무도 내가 이것을 어떻게하기 위해해야한다고 말할 수 있습니까?add_action hook이 선언 된 함수를 찾지 못했습니다.

나는 이것을 시도했다.

class WP_Adminmsp_Webservice{ 


    function __construct() { 
     add_action('init', 'msp_pages_permalink', 10, 2); 
} 

function msp_pages_permalink($permalink_structure, $post_id) 
     { 
     echo "called"; 
     } 
} 

이 오류가 표시되고 : 객체 메소드를 후킹하는 경우

call_user_func_array() expects parameter 1 to be a valid callback function 'msp_pages_permalink' not found or invalid function name.

+0

당신이'add_action'는 무엇을 알 수 있습니까 : 당신이 외부 개체를 에서 add_action를 호출하는 경우

, 당신은 같은 일을 할 것인가? – yivi

+0

예. 내가 알고 있고 msp_pages_permalink 함수를 가지고 있기 때문에 – Shwet

+0

코드를 보여줍니다. :) 적어도 함수 선언. – yivi

답변

1

을, 당신은 차례로 call_user_func을 위해 그것을 사용하는 add_action 호출 방법을 (들어있는 개체를 전달해야 요구).

예, 당신은 개체를 다른 방법 inside에서 작업을 실행하는 가정, 당신은 할 것 "your_method는"전화 할 필요가있는 (공공) 메소드의 이름입니다

add_action('init', [$this, 'your_method'], 10, 2); 

.

$plugin_object = new My_Plugin(); 
add_action('init', [$plugin_object, "your_method"], 10, 2) 
+0

을 확인해보십시오. – Shwet

+0

내 코드에 이미 나와 있습니다. 나는 그것을 완전히 잊었다. – Shwet

+0

??? 제발, 더 염두에 두십시오. 그대로 도울 필요가있는 코드를 게시하지 않으면 사람들이 도움을주기 위해 시간을 낭비하게 만듭니다. 그러나 ** 잘못된 ** 데이터를 제공하면 단순히 불가능합니다. 코드를 실제로 게시하십시오. – yivi