2017-02-21 6 views
0

登録後、ページをOTP Verificatioにリダイレクトします。私は私のテーマのfunctions.phpでこの機能のために以下のコードを使用しましたが、うまく機能しましたが、私のカスタムプラグインファイルでこのコードを使用したときに機能しませんでした。registration_redirectプラグインファイルで作業していません

add_filter('registration_redirect', 'wpesov_registration_redirect'); 

function wpesov_registration_redirect() { 

     return home_url('/otp-verification'); 

    } 

プラグインを変更する必要がありますか、何か不足していますか?

TIA

答えて

0

私はあなたの問題はWordPressがそのコンテンツを操作することができます前に、プラグインファイルがロードされていると思います。

あなたはこのようなあなたのメインのプラグインファイル内のクラスを使用している場合:

class my_plugin 
{ 

    public static function init() { 
     $class = __CLASS__; 
     new $class; 
    } 

    function __construct() { 
     add_filter('registration_redirect', array($this, 'wpesov_registration_redirect')); 
    } 

    public function wpesov_registration_redirect() { 
     return home_url('/otp-verification'); 
    } 
} 

add_action('plugins_loaded', array('my_plugin', 'init')); 

し、適切にそれをロードし、あなたのプラグインクラスのメソッドとして、その機能を追加し、コンストラクタでフィルタを登録する必要があります。プラグインを初期化する方法はいくつかありますが、どちらを使用しているのかわからないので、私はさらに助けません。上記のコードを実装するか、メインのプラグインファイル構造を投稿してください。

EDIT:またはプラグインクラスに静的メソッドを追加し、外部のフィルタを登録します。

class my_plugin 
{ 

    public static function init() { 
     $class = __CLASS__; 
     new $class; 
    } 

    public static function wpesov_registration_redirect() { 
     return home_url('/otp-verification'); 
    } 
} 
// init plugin 
add_action('plugins_loaded', array('my_plugin', 'init')); 

// init registration_redirect hook 
add_filter('registration_redirect', array('my_plugin', 'wpesov_registration_redirect')); 
+0

はそれを試みたが、まで働いていませんでした。何が問題でしょうか? –

+0

私は質問しました - ファイルがロードされており、コードを実行していますか?例えば。 echo "hi"を入力した場合。それはサイトのページに印刷されますか? – keyBeatz

+0

できれば、 ''を登録フォームに追加してください。 – keyBeatz

関連する問題