如何限制自定义字段接受重复值

时间:2013-12-09 11:20:46

标签: php wordpress

我正在使用register_post_type添加输入字段,让我们说“brand_name”。 我想否认那个领域的重复。

我怎么能在WordPress中做到这一点? 请帮帮我。

这是我的代码:

function brand_register_meta_boxes() {
if (!class_exists('RW_Meta_Box'))
        return;
    $prefix = 'post_';

    $meta_boxes[] = array(
       'title' => 'Add Brand',
        'pages' => array('brand'),

        'fields' => array(

            array(
            'name' => __( 'Brand Name', 'rwmb' ),
            'desc' => __( 'Add Brand Name', 'rwmb' ),
            'id'   => "{$prefix}title",
            'type' => 'text',
            'required' => true,

            ), 

        )
    );     
        foreach ($meta_boxes as $meta_box) {
        new RW_Meta_Box($meta_box);
    }

}

2 个答案:

答案 0 :(得分:0)

归结为您在save_post挂钩上所做的事情,即将自定义字段保存到数据库时。看起来你正在使用RW Meta Box类。我没有亲自使用过RW Meta Box,但基于https://github.com/rilwis/meta-box/blob/master/上的Github回购,你应该可以通过为你的字段定义设置'multiple' => false来实现这一点。

function brand_register_meta_boxes() {
    if (!class_exists('RW_Meta_Box'))
        return;
    $prefix = 'post_';

    $meta_boxes[] = array(
        'title' => 'Add Brand',
        'pages' => array('brand'),
        'fields' => array(
            array(
            'name' => __( 'Brand Name', 'rwmb' ),
            'desc' => __( 'Add Brand Name', 'rwmb' ),
            'id'   => "{$prefix}title",
            'type' => 'text',
            'required' => true,
            'multiple' => false
            ), 
        )
    );     
    foreach ($meta_boxes as $meta_box) {
        new RW_Meta_Box($meta_box);
    }
}

答案 1 :(得分:0)

http://in2.php.net/function.array-unique

您可以将该独特功能用于独特的品牌名称