Correos personalizados tipo cómo conseguir la casilla de verificación actualizar meta campo null

Tengo 7 campos meta para un tipo personalizado post en Wordpress. Estos 7 días de la semana (de domingo al sábado) en particular y tienen casillas de verificación para cada uno. He conseguido con éxito la casilla de verificación POST cuando el valor es 'On', sin embargo cuando regrese a la página Editar y tratar de anular la selección, el valor permanece igual en la base de datos.

Esto es lo que tengo para cada entrada de elemento:
 <li><input type="checkbox" name="sunday" <?php if( $meta_sunday == true ) { ?>checked="checked"<?php } ?>" /> Sunday<br /></li>
Y mis líneas de actualización:
if(!isset($_POST["sunday"])):
    return $post;
    endif;
    update_post_meta($post->ID, "sunday", $_POST["sunday"] );
if(!isset($_POST["sunday"])):
    return $post;
    endif;
    update_post_meta($post->ID, "sunday", $_POST["sunday"] );
.


Solución 1

Parece que la meta no es ser apto para el post 'Domingo' cuando la casilla de verificación está desactivada.
If( isset($_POST['sunday']) ){
    update_post_meta($post->ID, "sunday", $_POST["sunday"] );
}else{
    delete_post_meta($post->ID, "sunday");
}
return $post;
O puede establecer el valor false
If( isset($_POST['sunday']) ){
    update_post_meta($post->ID, "sunday", true );
}else{
    update_post_meta($post->ID, "sunday", false );
}
return $post;
If( isset($_POST['sunday']) ){
    update_post_meta($post->ID, "sunday", true );
}else{
    update_post_meta($post->ID, "sunday", false );
}
return $post;
.

Solución 2

Casillas sin marcar no se fijan en el $_POST, así que tendría que vaciar su campo meta. Algo como esto debería funcionar:
 $sunday = ( isset( $_POST['sunday'] ) ) ? $_POST['sunday'] : "";
 update_post_meta( $post->ID, 'sunday', $sunday );
 $sunday = ( isset( $_POST['sunday'] ) ) ? $_POST['sunday'] : "";
 update_post_meta( $post->ID, 'sunday', $sunday );
.




Problemas relacionados

¿Cómo puedo guardar meta personalizado a un valor global?

Añadir una casilla de verificación para enviar pantalla que añade una clase al título

¿Agregar un campo personalizado o metabox al poste widget en miniatura?

¿Cómo quitar babosa metabox desde la página de correos personalizados tipo?

actualizar un campo personalizado de meta sólo

Problema de caché con WP_Query y filtrado de campo personalizado

Número en la casilla de verificación con la opción personalizado página

Crear orden de correos personalizados (con correos personalizados tipo meta)

Tipo personalizado Post no devuelve la razón child_of

¿necesito un campo nonce para cada caja meta que agrego a mi correos personalizados tipo admin?

Cómo usar la casilla de verificación en opción personalizada página utilizando la API de configuración

¿Cómo mostrar Multi Checkbos seleccione Custom Field en el post?

Source: Stack Exchange Inc; License: cc by-sa 3.0 Contacto / Contact