We are only using simple products as child of Bundle product.
Could we safely return early with false? for isVirtual
method of Bundle class?
# Class: MagentoBundleModelProductType
public function isVirtual($product)
{
/*if ($product->hasCustomOptions()) {
$customOption = $product->getCustomOption('bundle_selection_ids');
$selectionIds = $this->serializer->unserialize($customOption->getValue());
$selections = $this->getSelectionsByIds($selectionIds, $product);
$virtualCount = 0;
foreach ($selections->getItems() as $selection) {
if ($selection->isVirtual()) {
$virtualCount++;
}
}
return $virtualCount === count($selections);
}*/
return false;
}
$selections->getItems()
part of the code is causing the performance issue as it has to trigger multiple SQL queries.