显示页面顶部的 Shortcode 中的 Wordpress 返回功能

Wordpress Returning function within Shortcode displaying top of the page

我正在尝试使用简码来显示终极会员表单,我遇到的问题是简码的输出始终显示在页面顶部,而不是我放置简码的位置。

我认为它会在短代码被调用后立即输出 acf_form(settings) 而不会返回它。

function op_profile_skills_func (){
    $form = acf_form($settings);
    return $form; 
}
add_shortcode('op_profile_skills', 'op_profile_skills_func');

不确定我做错了什么,有什么想法吗?我试过回声。

如您所料,函数正在打印表单而不是返回表单。

您可以做的是使用输出缓冲区捕获输出:

function op_profile_skills_func (){
    ob_start();
    acf_form($settings);
    $form = ob_get_clean();
    return $form; 
}

startclean 之间回显或打印的所有内容都将被收集并传递给 $form