向POST META_INPUT添加多个值(数组

时间:2019-10-28 作者:LovinQuaQua

我有一个自定义的帖子类型,其中一篇帖子是通过表单提交生成的。一个键是一个数组,它应该存储在一个自定义字段中。。。我将下面的代码缩短到重要部分->他们的键是“event\\u musikstil”

\'meta_input\' => array(                          
             // Custom Fields
                \'event_musikstil\' => foreach( $event_musikstil as $item ) { add_post_meta( $post_id, "_event_musikstil", $item ); },
                )

1 个回复
SO网友:Robert Ruby II

您可以简单地将元存储为数组。。。还有add\\u post\\u meta。。。我从不使用它。如果帖子的元数据不存在,则更新默认值以添加。

update_post_meta($post_id, "_event_musikstil", $event_musikstil);
wordpress将把该值存储为一个序列化数组,因此只需按如下方式检索它

get_post_meta($post_id, "_event_musikstil", TRUE);
希望这有帮助。

另一种方法是,如果不想存储序列化的数组,可以使用explode和infrade

        $metaStr = get_post_meta($post_id, \'your_key\', true);
        if(!empty($metaStr)){
            $meta_arr = explode(\',\', $metaStr); // assuming you stored as , separated
        }else{
            $meta_arr = []; // empty array
        }
        foreach($newValuesToAdd as $newValueToAdd) {
            $meta_arr[] = $newValueToAdd;
        }
       update_post_meta($post_id, \'your_key\', implode(\',\',$meta_arr));

相关推荐

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

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