在Rest Api端点内使用Add_row-Wordpress ACF



我试图从用户将从http请求发送的数据中添加行,并将其插入到某个转发器字段中。

现在,我的功能出现了问题

function add_row_to_direction() {
$row =
array(
'title'            => "Test Title",
'directions_group' => array(
array(
'direction' => "Test Direction"
)
)
);
add_row( "directions", $row, 365 );
}

问题是,当我将这个测试函数添加到rest api端点回调函数时,它不会发生,如果我只是在functions.php内部调用函数,那么一切都会如预期那样工作。

我希望你们能帮助我,

非常感谢

Ben

您有两个方法来添加行。

方法1:

  1. 确保在所有插件都已完全加载时加载函数。在ACF完全加载之前执行函数的可能性很高。因此,在您的代码中添加以下行:

    add_action( 'plugins_loaded', 'add_row_to_direction' );
    function add_row_to_direction() {
    $row =
    array(
    'title'            => "Test Title",
    'directions_group' => array(
    array(
    'direction' => "Test Direction"
    )
    )
    );
    add_row( "directions", $row, 365 );
    }
    

方法2:

  1. 将字段组暴露为ACF中的其余API。

  2. 如果你的目标是一个自定义的帖子类型,你必须去添加

    'show_in_rest' => true
    

    在函数中,您可以注册该post类型。

  3. 执行POST或PUT请求。

最新更新