WordPress:将do_操作的输出保存在变量中

WordPress:将do_操作的输出保存在变量中,wordpress,function,hook,action,Wordpress,Function,Hook,Action,我想将do_action的输出保存在一个变量中,以便以后使用。 如何保存这些输出?使用ob_start()和ob_get_contents()以及ob_end_clean()参见PHP手册下一页的示例1 第一次看起来很吓人,但效果很好。只要确保每次使用ob_start()时始终使用ob_end_clean() 这里我有一个插件中的这些动作,我想在一个快捷代码中使用这些动作的输出,do_动作是一个钩子,在这里你可以附加一个函数(回调)。如果回调真的返回了什么,那么你可以直接调用它。e、 g.do_

我想将do_action的输出保存在一个变量中,以便以后使用。 如何保存这些输出?

使用ob_start()和ob_get_contents()以及ob_end_clean()参见PHP手册下一页的示例1

第一次看起来很吓人,但效果很好。只要确保每次使用ob_start()时始终使用ob_end_clean()


这里我有一个插件中的这些动作,我想在一个快捷代码中使用这些动作的输出,do_动作是一个钩子,在这里你可以附加一个函数(回调)。如果回调真的返回了什么,那么你可以直接调用它。e、 g.do_action('init','your_function');然后您可以简单地调用$x=您的函数()。但是如果函数没有返回任何东西呢?可能您需要修改它们。但是,如果它是由其他插件,它不应该被编辑,相反,你可以使用start_ob。希望这有帮助。谢谢你的评论。不幸的是,我没有得到它……;)我得另找一个方法。你的答案有错。请将“ob_get_content()”更改为“ob_get_contents()”
ob_start(); // start capturing output.
do_action('any_action_you_want');
$save_output_here = ob_get_contents(); // the actions output will now be stored in the variable as a string!
ob_end_clean(); // never forget this or you will keep capturing output.