当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

「関数リファレンス/remove filter」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(説明: 用例の追加)
(残りを和訳および誤記訂正。)
 
(他の1人の利用者による、間の4版が非表示)
1行目: 1行目:
 +
{{CheckTrans}}
 +
 +
<div id="Description">
 
== 説明 ==
 
== 説明 ==
この関数は、特定のフィルターフックに付加されている関数を除去します。特定のフィルターフックに付加されているデフォルト関数を除去することができ、別のものに置き換えできます。[[関数リファレンス/remove filter|remove_action()]], [[関数リファレンス/add action|add_action()]] および [[関数リファレンス/add filter|add_filter()]] も参照してください。
+
</div>
  
'''''重要:''' フックを除去するには、<tt>$function_to_remove</tt> と <tt>$priority</tt> 引数がフックが追加されたときと一致する必要があります。これはフィルター、アクションの双方に当てはまります。除去に失敗した時に警告は出ません。''
+
この関数は、特定のフィルターフックに付加されている関数を除去します。例えばデフォルトのフィルター関数を取り除き、別の関数に置き換えできます。[[関数リファレンス/remove_action|remove_action()]]、[[関数リファレンス/add_filter|add_filter()]] および [[関数リファレンス/add_action|add_action()]] も参照してください。
 +
 
 +
<p class="important">'''重要:''' フックから関数を除去するには、<tt>$function_to_remove</tt> と <tt>$priority</tt> 引数が、フックへ関数が追加されたときと一致する必要があります。これはフィルター、アクションの双方に当てはまります。除去に失敗した時に警告は出ません。</p>
 +
 
 +
<div id="Usage">
 +
== 使い方 ==
 +
</div>
  
== 用例 ==
 
 
  <?php remove_filter( $tag, $function_to_remove, $priority ); ?>
 
  <?php remove_filter( $tag, $function_to_remove, $priority ); ?>
  
 +
<div id="Parameters">
 
== パラメータ ==
 
== パラメータ ==
 +
</div>
  
{{Parameter|$tag|文字列|除去する関数がフックしているアクションフック。}}
+
{{Parameter|$tag|文字列|除去したい関数が追加されているフィルターフック。}}
{{Parameter|$function_to_remove|文字列|除去する関数名。}}
+
{{Parameter|$function_to_remove|コールバック|除去したいコールバック関数。}}
{{Parameter|$priority|整数|(関数がフックされる時に定義される)関数の優先度。|オプション|10}}
+
{{Parameter|$priority|整数|関数の優先順位(関数がフックへ追加されたときに指定された値)。|オプション|10}}
{{Parameter|$accepted_args|整数|関数が受け入れる引数の数。|オプション|1}}
+
  
== 戻り値 ==
+
<div id="Return">
 +
== 戻り値 ==  
 +
</div>
  
 
; (''真偽値'') : 関数が除去されたかどうか。
 
; (''真偽値'') : 関数が除去されたかどうか。
:* <tt>True</tt> - 関数除去成功。
+
:* <tt>True</tt> - 関数を除去できた。
:* <tt>False</tt> - 関数除去失敗。
+
:* <tt>False</tt> - 関数を除去できなかった。
  
 +
<div id="Example">
 
== 用例 ==
 
== 用例 ==
 +
</div>
  
 
<pre>
 
<pre>
31行目: 44行目:
 
</pre>
 
</pre>
  
== 注 ==
+
追加されているフィルター関数がクラスのメソッドだった場合(例えばプラグインによって)、それを除去するにはクラス変数をアクセスする必要があります。
オブジェクトが渡されるフィルターを使用しているとき、たいていは (オブジェクトの別インスタンスではなく) remove filter で完全に同一なオブジェクトを渡すことが必要でしょう。(詳細は _wp_filter_build_unique_id() 参照)
+
  
== ==
+
<pre>
この関数は、意図したフィルター以外のフィルターも除去する可能性があります。
+
global $my_class;
 +
remove_filter( 'the_content', array( $my_class, 'class_filter_function' ) );
 +
</pre>
 +
 
 +
フィルター関数の除去は、それがフックへ追加された後に行いましょう。後から追加されるフィルター関数を事前に指定して除去することはできません。
 +
 
 +
<div id="Notes">
 +
== 参考 ==
 +
</div>
 +
 
 +
オブジェクトが渡されるフィルターを使用しているとき、<tt>remove_filter()</tt> に、たいていは(オブジェクトの別のインスタンスではなく)完全に同一なオブジェクトを渡すことが必要でしょう。(詳細は [https://core.trac.wordpress.org/browser/tags/4.2.2/src/wp-includes/plugin.php#L838 <tt>_wp_filter_build_unique_id()</tt>] を参照。)
  
== 更新履歴 ==
+
<div id="Change_Log">
 +
== 変更履歴 ==
 +
</div>
  
1.2.0 以降
+
* 新規導入: 1.2.0
  
 +
<div id="Source_File">
 
== ソースファイル ==
 
== ソースファイル ==
 +
</div>
  
 
<tt>remove_filter()</tt> は {{Trac|wp-includes/plugin.php}} にあります。
 
<tt>remove_filter()</tt> は {{Trac|wp-includes/plugin.php}} にあります。
  
== 関連資料 ==
+
<div id="Related">
 +
== 関連項目 ==
 +
</div>
 +
 
 +
[http://www.warna.info/archives/938/ http://www.warna.info/archives/938/] Simple Colors - WordPressでフィード配信を完璧に止める方法
  
 
{{Filter Tags}}
 
{{Filter Tags}}
51行目: 81行目:
 
{{Tag Footer}}
 
{{Tag Footer}}
  
{{原文|Function Reference/remove_filter|93356}}<!-- 00:15, 30 September 2010 Nkuttler 版 -->
+
{{原文|Function Reference/remove_filter|144043}} <!-- 13:04, 5 June 2014 Tferry 版 -->
 +
 
 
{{DEFAULTSORT:Remove_filter}}
 
{{DEFAULTSORT:Remove_filter}}
[[Category:Functions]]
+
[[Category:関数]]
 +
 
 +
[[en:Function Reference/remove filter]]

2015年8月13日 (木) 22:06時点における最新版

この項目「関数リファレンス/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最新版との差分