samedi 23 juillet 2016

How can I make an item show/hide based on a checkbox being checked/not checked?

So I created a checkbox on my wordpress theme. everything saves properly and all of that:

function member_page_featured_meta() {
    add_meta_box( 'member_page_meta', __( 'Is this a Member Page?', 'member_page-textdomain' ), 'member_page_meta_callback', 'page', 'side', 'low' );
}
add_action( 'add_meta_boxes', 'member_page_featured_meta' );

/**
 * Outputs the content of the meta box
 */

function member_page_meta_callback( $post ) {
    wp_nonce_field( basename( __FILE__ ), 'member_page_nonce' );
    $member_page_stored_meta = get_post_meta( $post->ID );
    ?>

 <p>
    <div class="member_page-row-content">
        <label for="featured-checkbox">
            <input type="checkbox" name="featured-checkbox" id="featured-checkbox" value="yes" <?php if ( isset ( $member_page_stored_meta['featured-checkbox'] ) ) checked( $member_page_stored_meta['featured-checkbox'][0], 'yes' ); ?> />
            <?php _e( 'Yes', 'member_page-textdomain' )?>
        </label>

    </div>
</p>   

    <?php
}

/**
 * Saves the custom meta input
 */
function member_page_meta_save( $post_id ) {

    // Checks save status - overcome autosave, etc.
    $is_autosave = wp_is_post_autosave( $post_id );
    $is_revision = wp_is_post_revision( $post_id );
    $is_valid_nonce = ( isset( $_POST[ 'member_page_nonce' ] ) && wp_verify_nonce( $_POST[ 'member_page_nonce' ], basename( __FILE__ ) ) ) ? 'true' : 'false';

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

// Checks for input and saves - save checked as yes and unchecked at no
if( isset( $_POST[ 'featured-checkbox' ] ) ) {
    update_post_meta( $post_id, 'featured-checkbox', 'yes' );
} else {
    update_post_meta( $post_id, 'featured-checkbox', 'no' );
}

}
add_action( 'save_post', 'member_page_meta_save' );

What I need is to make it so that I can use this to show/hide content in Wordpress using Php, but I don't exactly know how to target it in a php if statement.

Do I use the name (featured-checkbox), id (#featured-checkbox), fuction name ($member_page_featured_meta), etc.

And then to make that a specific bit of HTML, how would I want to go about doing that?




Aucun commentaire:

Enregistrer un commentaire