Magento 2 хранит медиа-данные (в том числе картинки) в папке pub/media
.
Расположенная ниже функция возвращает веб-адрес этой папки для текущего магазина системы.
Обычно этот адрес выглядит как http://site.com/pub/media/
, однако может быть более сложным (например, если текущий магазин расположен подпути домена или если используется протокол HTTPS).
/** @return string */
function getMediaBaseUrl() {
/** @var \Magento\Framework\ObjectManagerInterface $om */
$om = \Magento\Framework\App\ObjectManager::getInstance();
/** @var \Magento\Store\Model\StoreManagerInterface $storeManager */
$storeManager = $om->get('Magento\Store\Model\StoreManagerInterface');
/** @var \Magento\Store\Api\Data\StoreInterface|\Magento\Store\Model\Store $currentStore */
$currentStore = $storeManager->getStore();
return $currentStore->getBaseUrl(\Magento\Framework\UrlInterface::URL_TYPE_MEDIA);
}
Обратите внимание, что метод getBaseUrl
отсутствует в интерфейсе \Magento\Store\Api\Data\StoreInterface
и присутстует лишь в одной конкретной реализации этого интерфейса — \Magento\Store\Model\Store