',
esc_attr( $type ),
esc_attr( $name ),
esc_attr( $extra['id'] ?? '' ),
esc_attr( $value ),
esc_attr( $extra['placeholder'] ?? '' )
);
break;
case self::CHECKBOX:
$content = sprintf(
'',
esc_attr( $name ),
esc_attr( $extra['id'] ?? '' ),
checked( $value, 1, false ) ? 'checked' : ''
);
break;
case self::SELECT:
$select = [
sprintf(
'',
];
$options = '';
foreach ( $extra['options'] ?? [] as $key => $value_option ) {
if ( $value === $key ) {
$options .= sprintf( '', esc_attr( $key ), wp_kses_post( $value_option ) );
continue;
}
$options .= sprintf( '', esc_attr( $key ), wp_kses_post( $value_option ) );
}
$content = Template::instance()->nest_elements( $select, $options );
break;
case apply_filters( 'learn-press/meta-box-field-type', 'custom' ):
$content = apply_filters( 'learn-press/meta-box-field-content', '', $type, $name, $extra );
break;
default:
echo 'Not support type';
break;
}
echo Template::instance()->nest_elements( $el_wrapper, $content );
}
}