$settings['ar_variants'], "name" => "ar_variants"]; $jsArr["wcVariants"] = $settings['wc_variants']; $jsArr["plan"] = 'premium'; return $jsArr; } public function get_post_premium_settings($settings) { $index = 1; foreach ($settings['ar_variants'] as $key => $variant) { $settings['ar_variants'][$key]['display_order'] = $index++; if (isset($settings['ar_variants'][$key]['modelSrcId'])) { $variant_url = wp_get_attachment_url($settings['ar_variants'][$key]['modelSrcId']); $settings['ar_variants'][$key]['modelSrc'] = !empty($variant_url) ? $variant_url : ""; } $materials = isset($variant['materials']) ? $variant['materials'] : []; foreach ($materials as $k => $m) { if (isset($m['texture'])) { $settings['ar_variants'][$key]['materials'][$k]['texture_url'] = wp_get_attachment_image_url($m['texture']); } } } return $settings; } public function premium_render_ar($html, $settings) { if (!empty($settings['ar_variants'])) { $variants = ''; $variants .= '
'; $html .= $variants; } return $html; } public function save_post_premium_settings($post_id, $current_settings) { if (isset($_POST['ar_variant'])) { if (is_array($_POST['ar_variant'])) { $variants = $_POST['ar_variant']; $current_settings['ar_variants'] = $variants; } } else { $current_settings['ar_variants'] = []; $current_settings['wc_variants'] = []; } return $current_settings; } public function save_variation_premium_settings($variation_id, $i, $current_settings) { $custom_field = $_POST['_ar_variant_id'][$i]; if (isset($custom_field)) { $current_settings['wc_variants'][$variation_id] = sanitize_text_field($custom_field); } return $current_settings; } }