'_sync_basalam_is_mobile_product_checkbox',
'label' => 'محصول موبایلی',
'description' => 'در صورتی که محصول شما موبایل است ، این گزینه را فعال نمایید .',
'desc_tip' => true,
'value' => $checked,
]);
wp_nonce_field('sync_basalam_save_mobile_fields_action', '_sync_basalam_mobile_fields_nonce');
self::renderFields($checked);
}
public static function renderFields($checked)
{
$fields = [
'_sync_basalam_mobile_storage' => 'حافظه داخلی*',
'_sync_basalam_cpu_type' => 'نوع پردازنده - CPU*',
'_sync_basalam_mobile_ram' => 'حافظه RAM*',
'_sync_basalam_screen_size' => 'سایز صفحه نمایش*',
'_sync_basalam_rear_camera' => 'دوربین پشت*',
'_sync_basalam_battery_capacity' => 'ظرفیت باتری*',
];
echo '
';
foreach ($fields as $id => $label) {
woocommerce_wp_text_input([
'id' => $id,
'label' => $label,
'type' => 'text',
'value' => get_post_meta(get_the_ID(), $id, true),
]);
}
echo '
';
}
public static function saveCheckbox($postId)
{
if (
!isset($_POST['_sync_basalam_mobile_fields_nonce'])
|| !wp_verify_nonce(sanitize_text_field(wp_unslash($_POST['_sync_basalam_mobile_fields_nonce'])), 'sync_basalam_save_mobile_fields_action')
) {
return;
}
$syncBasalamIsMobileCheckboxValue = isset($_POST['_sync_basalam_is_mobile_product_checkbox']) ? 'yes' : 'no';
update_post_meta($postId, '_sync_basalam_is_mobile_product_checkbox', $syncBasalamIsMobileCheckboxValue);
if ($syncBasalamIsMobileCheckboxValue === 'no') {
self::deleteFields($postId);
} else {
self::saveFields($postId);
}
}
public static function deleteFields($postId)
{
$fields = [
'_sync_basalam_mobile_storage',
'_sync_basalam_cpu_type',
'_sync_basalam_mobile_ram',
'_sync_basalam_screen_size',
'_sync_basalam_rear_camera',
'_sync_basalam_battery_capacity',
];
foreach ($fields as $field) {
delete_post_meta($postId, $field);
}
}
public static function saveFields($postId)
{
if (
!isset($_POST['_sync_basalam_mobile_fields_nonce'])
|| !wp_verify_nonce(sanitize_text_field(wp_unslash($_POST['_sync_basalam_mobile_fields_nonce'])), 'sync_basalam_save_mobile_fields_action')
) {
return;
}
$fields = [
'_sync_basalam_mobile_storage',
'_sync_basalam_cpu_type',
'_sync_basalam_mobile_ram',
'_sync_basalam_screen_size',
'_sync_basalam_rear_camera',
'_sync_basalam_battery_capacity',
];
foreach ($fields as $fieldKey) {
if (isset($_POST[$fieldKey])) {
$value = sanitize_text_field(wp_unslash($_POST[$fieldKey]));
update_post_meta($postId, $fieldKey, $value);
}
}
}
}