我有一个需要wordpress全球$ post的功能。所以我写得如此:
function custom_function($post){//stuff}
我已将该功能添加到wp_head:
add_action('wp_head', 'custom_function');
有没有办法通过动作传递函数变量?我能想出的唯一解决方案是在函数中设置全局$ post,但这不是一个好习惯。
谢谢你们。
答案 0 :(得分:1)
您可以在do_action
函数中传递arguments参数,如下所示。
add_action('wp_head', 'custom_function','10',1);
do_action( 'wp_head', $post);
阅读do_action了解更多信息。
注意:使用像global $post;
一样完全没问题。它不会被认为是专门针对wp的不良做法。