add_action verwendet ‘echo’ add_filter verwendet ‘return’, warum?

Eine add_action wird nur Inhalt zurückgeben, wenn Sie in der function echo aufrufen und tut nichts, wenn Sie return , warum?

ARBEITEN :

 add_action( 'rss2_item', 'custom_enclosure' ); function custom_enclosure() { global $post; $output = 'Hello World'; echo $output; }; 

FUNKTIONIERT NICHT:

 add_action( 'rss2_item', 'custom_enclosure' ); function custom_enclosure() { global $post; $output = 'Hello World'; return $output; }; 

Mit add_filter muss man return , aber echo funktioniert auch?!?!

 function insert_post_related($content) { $content = "Hello World"; return $content; } add_filter('the_content','insert_post_related'); 

Es verwirrt die f * # & aus mir heraus und ich habe gerade 4 Stunden vergeudet, weil ich eine add_action anstelle von echo . Für add_filter kann man sowohl return als auch echo , warum ist das so?

Was ist die Konvention hier?

Solutions Collecting From Web of "add_action verwendet ‘echo’ add_filter verwendet ‘return’, warum?"