質問: フィルタフックとアクションフックの違いは? 私は最近プラグインapiをもう少し詳しく見てきましたが、 アクションフックとフィルタフックの間に本当の違いは何があるのか を考えていました。どちらもパラメータとしてデータを受け取るイベントであり、どちらも同じことができるようです。明らかに、アクションが発生したときにアクションが呼び出され、データが操作されたときにフィルタが呼び出されることがわかりますが、これは単なるセマンティックな名前の違いのようです。セマンティクスとそれらの用途に加えて、それらの間にはどんな本当の違いがありますか?
回答: add_action()コア関数のソースを見れば、それはadd_filter()関数の単なるラッパーです...do_action()コア関数を見ると、apply_filters()コア関数と非常によく似ていますが、大きな違いが1つあります。値を返しません。だからこれはどういう意味ですか?アクションはフィルタに似ていますが、アクションが値を返さないため、データを変更することはできません。フィルタメカニズムを単純にコピーし、値を返さないことでwordpressのアクションメカニズムを作成するのが簡単であることがわかります。基本的に、アクションでできることは、値を変更せずに単純に関数を実行することだけです。