添加并显示保存帖子 WordPress 时的错误

问题描述 投票:0回答:1

对于我的 CPT,我使用了一些额外的元数据。 我想验证元数据,如果有问题则显示错误。

经过一些研究,我尝试了这个代码

add_action('save_post', function($post_id){
    if(isset($_POST['joLink'])){
        if($_POST['joLink'] !== ''){
            update_post_meta($post_id, 'joLink', $_POST['joLink']);
        }else{
            add_settings_error(
                'missing-link',         
                'missing-link',         
                'Link may not empty!',          
                'error' 
            );
            add_action('admin_notices', function(){
                $message = '<div id="message" class="error"><p><ul>';         
                foreach ( $errors as $error ) {         
                    $message .= '<li>' . $error['message'] . '</li>';         
                }         
                $message .= '</ul></p></div>';      
                echo $message;
            });
        }
    }else{
        delete_post_meta($post_id, 'joLink');
    }
    
    return $post_id;
});

如果我使用空链接保存帖子,Wordpress 会保存数据并返回成功。 我缺少什么?

php wordpress hook
1个回答
0
投票

取消帖子保存所需要做的只是

die


add_action('save_post', function ($post_id) {
    if (true) {
        wp_die(__('Link may not empty!', 'your-text-domain'));
    }
    return $post_id;
});

© www.soinside.com 2019 - 2024. All rights reserved.