2017-07-26 6 views
1

申し訳ありませんが、明確なタイトルはありません。Wordpress:内部でadd_filterを起動する方法

私はプラグインを開発しています。このカスタムチュートリアルの他の列に追加したいと思います(このチュートリアルに従おうとしています:https://ryanbenhase.com/how-to-add-custom-columns-to-the-all-posts-screen-or-your-custom-post-type-in-wordpress/)。管理クラスで

私は__construct()

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

/** 
    * Perform all hooks for filters 
    * 
    * @since 1.4 
    */ 
    private function perform_filter_hooked_action() { 

     echo 'perform_filter_hooked_action called'; 
     add_filter('manage_custom_posts_columns' , array ($this , 'add_columns_to_summary_custom_post')); 

    } 

    /** 
    * 
    * Filter for add columns to summary custom post. 
    * 
    * Callback from perform_filter_hooked_action 
    * 
    * @since 1.4 
    */ 
    public function add_columns_to_summary_custom_post($columns) { 

     echo 'add_columns_to_summary_custom_post called'; 

    } 

でこれを持っている私は、画面上でのみ最初のエコー(perform_filter_hooked_actionと呼ばれる)ではなく二番目の(「と呼ばれるadd_columns_to_summary_custom_post」上の他の)を取得します。

どこが間違っていますか?

あなたはフィルタを使用する場合、あなたはそれをエコーし​​ない値を返す必要が大変

答えて

3

、ありがとうございました。多分それが問題の原因です。ドキュメントから

についてadd_filter()機能:フィルターが後で適用された場合

、各バインドコールバックは、優先度の高い順 で実行され、 新しい値を返すことで値を変更する機会が与えられます。

+0

ありがとうございました。私はその部分に注意を払わなかった。 – sineverba

関連する問題