WordPressの一部の機能を理解しようとしていますが、apply_filters(...)が実際に行うことを理解できません。
誰かがいくつかの例を挙げてこれを片付けることができますか?
apply_filters()
、それは両方のフィルタ適用される機能のための非常に誤解を招く名称であるとターゲット機能に引っ掛けアクションを
WordPressの一部の機能を理解しようとしていますが、apply_filters(...)が実際に行うことを理解できません。
誰かがいくつかの例を挙げてこれを片付けることができますか?
apply_filters()
、それは両方のフィルタ適用される機能のための非常に誤解を招く名称であるとターゲット機能に引っ掛けアクションを
回答:
apply_filters($tag, $value)
add_filter
指定されたフィルター「タグ」に「フック」された各関数に「値」引数を渡します(を使用)。各関数は値に対して何らかの処理を実行し、シーケンス内の次の関数に渡される変更された値を返します。
たとえば、デフォルトでは(WordPress 2.9)、the_content
フィルターは次の一連の関数を介して値を渡します。
apply_filters($value)
...
遅い答え
apply_filters()
global $wp_filters
配列と相互作用します。基本的には、現在のフィルター(またはフック)にアクション(/ callback関数)がアタッチされているかどうかを確認し、それを呼び出します。
コールバック/アクションをフィルターまたはフックにアタッチする場合は、コールバック名をグローバルフィルター配列に追加するだけです。その後、コード(テンプレート、コア、プラグインファイルなど)で呼び出しが発生しdo_action()
たり、apply_filters()
発生したりすると、WordPressが配列を検索してコールバックを呼び出します。フックよりもフィルターの方が特別なのは、コールバックを起動するだけでなく、(さらに処理するために)値を返すことです。つまり、フックはデータを挿入することであり、フィルタはデータを変更することです。
最も人気のある回答と追加のリソースを考慮して、私がここで収集しているものは次のとおりです。
<p>
タグに変換され、スマイルフェイスはアイコンに変換されます。最も基本的な用語では、apply_filtersはフィルターフックを初期化するために使用されます... add_filterは、すでに作成されているフックに新しい関数を割り当てます。