name = 'true_false';
$this->label = 'True / False';
$this->category = 'choice';
}
public function render( $field, $value = '', $name = null ) {
$name = $name ?: "metaforge[{$field['name']}]";
$is_checked = ! empty( $value ) ? 'checked' : '';
$field_label = esc_html( $field['label'] );
$ui_label = esc_html( $field['ui_label'] ?? ( $is_checked ? 'Yes' : 'No' ) );
echo '
';
echo '
';
echo '
';
// Hidden input ensures "0" is sent if unchecked
echo '';
echo '';
echo '
';
echo '
';
}
public function format_value( $value, $post_id, $field ) {
return (bool) $value;
}
public function sanitize( $value, $field ) {
return ! empty( $value ) ? 1 : 0;
}
}