2017-02-01 13 views
1

フロントサイドのページが開いているかリンクがクリックされているかどうかを調べる必要があるWordPressプラグインを作成していますか? 私はこれに空白です。これを達成するために何をすべきか教えてください。add_actionフックが宣言された関数を見つけられない

私はこれを試しました。

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

関連する問題