'.esc_html__('No product is added for comparison, please add some product to compare', 'shopengine').''; } $settings = Module_List::instance()->get_active_settings( 'comparison' ); $attributes_fields = $settings['attribute_fields']['value'] ?? [] ; $default_fields = [ 'url', 'image', 'price' ]; if( class_exists('ShopEngine_Pro') ) { $default_fields['attributes'] = $attributes_fields; } $fields = array_merge($default_fields, $settings['shop_field_in_table']['value'] ?? []); $fields['attributes'] = $attributes_fields; $share_buttons = $settings['share_button']['value'] ?? []; $field_value_manager = new Comparison_Field_Value(); $field_value_manager->product_ids = $content; $displayable_fields = []; foreach ( $content as $pid ) { if ( empty( $pid ) ) { continue; } $product = wc_get_product( $pid ); if(!$product || $product->get_status() !== 'publish' ) { continue; } if ( empty( $product ) ) { continue; } foreach ( $fields as $key => $field ) { if(gettype($field) != 'string'){ $slug = $key; }else{ $slug = $field ; } $displayable_fields[ $slug ][ $pid ] = $field_value_manager->get_value( $product, $slug, $field ); } } $format_attributes = []; if(isset($displayable_fields['attributes'])){ foreach ($displayable_fields['attributes'] as $product_id => $attribute_data){ foreach ($attribute_data[$product_id] as $key => $attributes){ $format_attributes[$key][$product_id] = $attributes; } } } $displayable_fields['attributes'] = $format_attributes; // group first tr values $first_tr = []; $first_tr['first_tr']['url'] = $displayable_fields['url'] ?? []; $first_tr['first_tr']['image'] = $displayable_fields['image'] ?? []; $first_tr['first_tr']['title'] = $displayable_fields['title'] ?? []; $first_tr['first_tr']['price'] = $displayable_fields['price'] ?? []; $displayable_fields = $first_tr + $displayable_fields ; if( class_exists('ShopEngine_Pro') ) { $displayable_fields['custom_meta'] = $settings['custom_meta_fields']['value'] ?? []; } unset($displayable_fields['url'], $displayable_fields['image'], $displayable_fields['title'], $displayable_fields['price']); ?>