private function _setDetails(array $data) { $this->_fieldCrawler->build($this->_product->type); $details = new Product\Type\DetailCollection(); foreach ($this->_fieldCrawler as $name => $field) { $value = $data[$this->_headingKeys->getKey($name)]; if ('' !== (string) $value) { $field->setValue($value); $details->{$name} = $field; } } $this->_product->setDetails($details); }