代码的问题是您传递了零个参数,但是documentation 明确规定:
必须指定参数的数量do_action()
应传递给回调函数。
另一件值得注意的事情是:如果单击new post
, 键入标题并立即点击publish
按钮只有在等待WordPress生成帖子的URL时,它才会运行!这是因为DOING_AUTOSAVE
核心功能中的条件。
下面是为您更正的代码:
add_action( \'new_to_publish\', \'conditional_email\', 10, 1);
/**
* Send emails based on categories when a post is published
*
* @param \\WP_Post $post
*/
function conditional_email( $post ) {
wp_mail( \'[email protected]\', \'test\', \'test\' );
}