使用默认值批量更新POST_META

时间:2018-01-09 作者:Randomer11

我有一个有1000多篇帖子的网站,最近添加了一个新的自定义字段(带有ACF),很明显,post\\u元数据不会被激活,直到我浏览了每一篇帖子并用一个值更新它。

所以我找到了这个代码:

function my_acf_load_value( $value, $post_id, $field ) {
    $value = get_the_title(); 
    return $value;
}
add_filter(\'acf/load_value/name=amazon_keywords\', \'my_acf_load_value\', 10, 3);
它将字段的默认值设置为wp标题,因此当我转到帖子时,帖子标题已经输入到自定义字段中,可以保存。

考虑到这一点,我是否可以做到这一点,而不必进入每个帖子并重新保存它?比如批量更新?我试图从post listings屏幕进行批量更新,但它似乎没有执行自定义字段的保存。

1 个回复
SO网友:mmm

您可以使用以下代码为帖子添加新的批量操作:

$postType = "post";


add_filter("bulk_actions-edit-" . $postType, function ($actions) {

    $actions["specialSave"] = "Special save";

    return $actions;

}, 20);


add_filter("handle_bulk_actions-edit-" . $postType, function ($sendback, $doaction, $post_ids) {

    if ("specialSave" !== $doaction) {
        return;
    }

    foreach ($post_ids as $idPost) {

        // action to do for each selected post



    }

    return $sendback;


}, 10, 3);
只是简单的保存还不足以设置值,您可以使用此代码直接为每个选定的帖子设置值。

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在