• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

関数リファレンス/remove filter

提供: WordPress Codex 日本語版
移動先: 案内検索

この項目「関数リファレンス/remove filter」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。

この関数は、特定のフィルターフックに付加されている関数を除去します。例えばデフォルトのフィルター関数を取り除き、別の関数に置き換えできます。remove_action()add_filter() および add_action() も参照してください。

重要: フックから関数を除去するには、$function_to_remove$priority 引数が、フックへ関数が追加されたときと一致する必要があります。これはフィルター、アクションの双方に当てはまります。除去に失敗した時に警告は出ません。

使い方

<?php remove_filter( $tag, $function_to_remove, $priority ); ?>

パラメータ

$tag
文字列) (必須) 除去したい関数が追加されているフィルターフック。
初期値: なし
$function_to_remove
コールバック) (必須) 除去したいコールバック関数。
初期値: なし
$priority
整数) (オプション) 関数の優先順位(関数がフックへ追加されたときに指定された値)。
初期値: 10

戻り値

(真偽値
関数が除去されたかどうか。
  • True - 関数を除去できた。
  • False - 関数を除去できなかった。

用例

remove_filter( 'the_content', 'wpautop' );
foreach ( array( 'the_content', 'the_title', 'comment_text' ) as $hook )
    remove_filter( $hook, 'capital_P_dangit' );

追加されているフィルター関数がクラスのメソッドだった場合(例えばプラグインによって)、それを除去するにはクラス変数をアクセスする必要があります。

global $my_class;
remove_filter( 'the_content', array( $my_class, 'class_filter_function' ) );

フィルター関数の除去は、それがフックへ追加された後に行いましょう。後から追加されるフィルター関数を事前に指定して除去することはできません。

参考

オブジェクトが渡されるフィルターを使用しているとき、remove_filter() に、たいていは(オブジェクトの別のインスタンスではなく)完全に同一なオブジェクトを渡すことが必要でしょう。(詳細は _wp_filter_build_unique_id() を参照。)

変更履歴

  • 新規導入: 1.2.0

ソースファイル

remove_filter()wp-includes/plugin.php にあります。

http://www.warna.info/archives/938/ Simple Colors - WordPressでフィード配信を完璧に止める方法

フィルター: has_filter(), add_filter(), apply_filters(), current_filter(), remove_filter(), remove_all_filters()



関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Function Reference/remove_filter最新版との差分