无法从POST_META表中删除行

时间:2016-08-24 作者:mkafiyan

我的帖子中有一个复选框,如果没有选中复选框,但当我按下更新按钮时,没有发生任何事情,并且该行没有被删除,我想删除一个数据库行。这是我的密码

if (isset($_POST[\'save-author-to-book\'])) {
        $key = \'save-author-to-book\';
        $values_to_save = array();
        $new_values = $_POST["save-author-to-book"];
        $existing_values = get_post_meta( $post_id, $key, true ) ;



        if(!empty($new_values)){
            foreach($new_values as $new_value ){
            $values_to_save[] = $new_value ;


            }
         update_post_meta( $post_id, $key, $values_to_save ); 
        }


    }
    else{

        delete_post_meta( $post_id, $key, $meta_value=\'\'); 
        // break;

    }
任何想法都将不胜感激。

1 个回复
最合适的回答,由SO网友:Maruti Mohanty 整理而成

这是因为meta的值key 位于if子句内,未为else设置。

尝试

else {
        $key = \'save-author-to-book\';
        delete_post_meta( $post_id, $key, $meta_value=\'\'); 
        // break;

    }