/** * PHPDOC * * @param string $value Type of object metadata is for (e.g., comment, post, or user) * @param int $object_id ID of the object metadata is for * @param string $meta_key Optional. Metadata key. * @param boolean $single Optional. * * @return mixed Single metadata value, or array of values * * @since PHPDOC */ public function fix_product_summary_featured_image($value, $object_id, $meta_key, $single) { if ('_thumbnail_id' == $meta_key) { $summary_data = NelioABVisitor::get_alternative_for_wc_product_summary_alt_exp($object_id); if ($summary_data) { $this->add_active_product_summary_experiment($summary_data['exp'], $summary_data['alt']); /** @var NelioABAlternative $alt */ $alt = $summary_data['alt']; $value = $alt->get_value(); // This first IF is a safeguard... if (is_array($value) && isset($value['image_id'])) { if ($single) { return $value['image_id']; } else { return $value['image_id']; } } } } return $value; }