记住单选按钮的元值

时间:2014-03-13 作者:tmyie

我创建了一个简单的元框,由两个单选按钮组成:是或否。

当他们单击相应的框时,它会将元值保存到数据库中。然而,贴子页面不记得它已经这样做了:无论按下哪个单选按钮,“checked”值都不再存在。

下面是代码。保存“已检查”状态的最佳方法是什么?这样用户就可以知道哪个已检查?

## ADD TOP META BOX

function top_custom_meta(){
    add_meta_box(\'top_meta\', \'Is this a top post?\', \'top_meta_callback\', \'post\', \'side\', \'high\');
}

add_action(\'add_meta_boxes\', \'top_custom_meta\');

## OUTPUTS TOP CONTENT 

function top_meta_callback( $post ) {
    wp_nonce_field( basename( __FILE__ ), \'top_nonce\' );
    $top_stored_meta = get_post_meta( $post->ID ); ?>
            <div>
        <label>
            <input type="radio" name="top-radio" value="radio-one-a">
            <?php echo \'Yes\' ?>
        </label>
            </div>

            <div>
        <label>
            <input checked="checked" type="radio" name="top-radio" value="radio-two-b">
             <?php echo \'No\' ?>
        </label>
      </div>

    <?php
}

# SAVE TOP OUTPUT TO DATABASE

function top_meta_save( $post_id ) {

    // Checks save status
    $is_autosave = wp_is_post_autosave( $post_id );
    $is_revision = wp_is_post_revision( $post_id );
    $is_valid_nonce = ( isset( $_POST[ \'top_nonce\' ] ) && wp_verify_nonce( $_POST[ \'top_nonce\' ], basename( __FILE__ ) ) ) ? \'true\' : \'false\';

    // Exits script depending on save status
    if ( $is_autosave || $is_revision || !$is_valid_nonce ) {
        return;
    }

    // Checks for input and sanitizes/saves if needed
    if( isset( $_POST[ \'top-radio\' ] ) ) {
        update_post_meta( $post_id, \'top-radio\', sanitize_text_field( $_POST[ \'top-radio\' ] ) );
    }

}
add_action( \'save_post\', \'top_meta_save\' );
我基本上需要补充checked="checked" 无论按下哪个单选按钮。

1 个回复
SO网友:Rarst

WP提供checked() 要在窗体中使用的助手。对于每个选项,您需要调用它,提供当前(保存)状态和当前选项的值。由此,它将生成匹配的选中标记。

结束

相关推荐

Query date in wordpress loop

我目前有一个名为“事件”的自定义帖子类型。我根据这里的教程创建了这个http://tatiyants.com/how-to-use-wordpress-custom-post-types-to-add-events-to-your-site/. 我想查询日期,只显示日期即将到来的帖子,而不是过去的帖子。$event_date >= time然而,在教程中,他使用一个短代码显示结果。我正在尝试将其转换为标准wp循环,以便在索引中显示它。php。他在其短代码函数中使用以下内容:add_shortcode