验证WordPress帖子中的自定义字段

我有一个自定义帖子类型发言人, 而在扬声器中有一个自定义字段Speaker_organization。我该如何验证并在管理员通知中显示错误。

add_action( 'add_meta_boxes', 'speaker_organization_box' ); function speaker_organization_box() { add_meta_box( 'speaker_organization', __( 'Organization', 'dbem' ), 'speaker_organization_box_content', 'speaker', 'side', 'high' ); }function speaker_organization_box_content( $post ) { // generate a nonce field wp_nonce_field( basename( __FILE__ ), 'dbem-speaker-organization-nonce' ); // get previously saved meta values (if any) $speaker_organization = get_post_meta( $post-> ID, 'speaker_organization', true ); echo '< label for="speaker_organization"> < /label> '; echo '< input type="text" id="speaker_organization" name="speaker_organization" placeholder="Organization Name" value="'.$speaker_organization.'" /> '; }function speaker_organization_box_save( $post_id ) { $speaker_organization = $_POST['speaker_organization']; update_post_meta( $post_id, 'speaker_organization', $speaker_organization ); } add_action( 'save_post', 'speaker_organization_box_save' );

#1使用
add_action(‘ admin_notices’ , ‘ my_admin_notice’ );
或使用验证js
add_action('admin_enqueue_scripts', 'add_my_js'); function add_my_js(){ wp_enqueue_script('my_validate', 'path/to/jquery.validate.min.js', array('jquery')); wp_enqueue_script('my_script_js', 'path/to/my_script.js'); }jQuery().ready(function() { jQuery("#post").validate(); }); < input type="text" name="my_custom_text_field" class="required"/>

function wpse_update_post_custom_values($post_id, $post) { // Do some checking... if($_POST['subhead'] != 'value i expect') { // Add an error here $errors-> add('oops', 'There was an error.'); } return $errors; } add_action('save_post', 'wpse_update_post_custom_values', 1, 2);

验证js代码
【验证WordPress帖子中的自定义字段】使用条件+管理员通知

    推荐阅读