I want to get producturl in sales order email
template in multi website.
I have used
$_item = $block->getItem();
$_objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$product = $_objectManager->get('Magento\Catalog\Model\Product')->load($_item->getProductId());
$product->setStoreId($_item->getStoreId());
$_imagehelper = $this->helper('Magento\Catalog\Helper\Image');
if($childProd = current($_item->getChildrenItems()))
{
$productImage = $_imagehelper->init($childProd->getProduct(), 'category_page_list')->resize(80, 80)->getUrl();
}
else
{
$productImage = $_imagehelper->init($_item->getProduct(), 'category_page_list')->resize(80, 80)->getUrl();
}
?>
<tr>
<td class="item-image">
<img src="<?php echo $productImage; ?>" alt="<?= $block->escapeHtml($_item->getName()) ?>" />
</td>
<td class="item-info<?php if ($block->getItemOptions()): ?> has-extra<?php endif; ?>">
<p class="product-name"><a href="<?= $product->getProductUrl(); ?>" style="color:#000;"><?= $block->escapeHtml($_item->getName()) ?></a></p>
<p class="sku"><?= /* @escapeNotVerified */ __('SKU') ?>: <?= $block->escapeHtml($block->getSku($_item)) ?></p>
<?php if ($block->getItemOptions()): ?>
<dl class="item-options">
<?php foreach ($block->getItemOptions() as $option): ?>
<dt style="font-size: 13px;font-family: Tahoma,sans-serif;"><strong><em><?= /* @escapeNotVerified */ $option['label'] ?> : </em></strong><?= /* @escapeNotVerified */ nl2br($option['value']) ?></dt>
<?php endforeach; ?>
</dl>
<?php endif; ?>
<?php $addInfoBlock = $block->getProductAdditionalInformationBlock(); ?>
<?php if ($addInfoBlock) :?>
<?= $addInfoBlock->setItem($_item)->toHtml() ?>
<?php endif; ?>
<?= $block->escapeHtml($_item->getDescription()) ?>
</td>
<td class="item-qty"><?= /* @escapeNotVerified */ $_item->getQtyOrdered() * 1 ?></td>
<td class="item-price">
<?= /* @escapeNotVerified */ $block->getItemPrice($_item) ?>
</td>
</tr>
in my Magento_Sales/templates/email/items/order/default.phtml
file
it's getting default base url.