Criei uma página personalizada para obter produtos. Eu tenho todas as informações, mas como obter o caminho completo da imagem. Eu estou usando getImage () está mostrando a imagem apenas como obter o caminho completo.
<a href="<?php echo $this->getBaseUrl().$_item->getUrlKey();?>" title="<?php echo $_item->getName() ?>" class="product-image"><img src="<?php echo $this->getImage();?>" alt="<?php echo $_item->getName() ?>" />
magento-2.1
product-images
paths
Usuário0434
fonte
fonte
Respostas:
Por favor, use o código abaixo no seu arquivo de modelo:
fonte
$ImageType
em$imageBlock->getImage($product, $ImageType)
:?Obtenha o URL da imagem com
ou se você deseja produzi-lo como elemento:
OU Tente o seguinte:
fonte
Uma coisa que você precisa ter em mente ao obter uma coleção personalizada de produtos é como você filtra a coleção para ter valores que precisam ser chamados no front-end. Você diz que possui uma página personalizada, portanto, assumirei que você está criando uma coleção personalizada também.
Quando você tiver que filtrar o que precisará. Dentro da sua classe de bloco, você precisará de algo como isto:
Observe que temos
$collection->addFieldToSelect('small_image');
como um campo para seleção. Se você não fizer isso, quando passar a chamada paragetImage()
o objeto do produto não terá o URL da imagem (e isso é difícil de ver, pois os objetos m2 são enormes e difíceis de fazervar_dump
). Então, você acabariaNULL
voltando ao chamar o URL da imagem.Em seguida, no seu modelo, você pode usar:
fonte
Veja como foi alcançado no magento na página do produto / visualização
onde
$_imageHelper
é:fonte
Se você deseja obter apenas o URL da imagem sem precisar renderizar o código HTML da imagem completa e sem chamar vários blocos, faça o seguinte:
fonte