Hello
I'm searching for a solution to display the expected delivery time if something is not in stock.
It should be only a text label (supporting multilanguage)
eg. "expected delivery in 1-2 weeks" or "expected delivery in 3-4 weeks"
It should show up somewhere in the area where the article price and the buy button is. - but only if stock qty is below 1
Does anybody know a way how to easily achieve that or a plugin which achieves that?
Regards
Patrick
Solved! Go to Solution.
I found a easy solution to do it.
I created a attribute which is included in default set. There i have all my delivery times in all languages.
and then copied:
vendor/magento/module-catalog/view/frontend/templates/product/view/type/default.phtml
to:
app/design/frontend/{Package}/{theme}/Magento_Catalog/templates/product/view/type/default.phtml& now instead of the "out of stock" label i just display my custom attributes text 'est_shippingtime':
<?php /* @var $block \Magento\Catalog\Block\Product\View\AbstractView */?>
<?php $_product = $block->getProduct() ?>
<?php if ($block->displayProductStockStatus()) :?>
<?php if ($_product->isAvailable()) :?>
<div class="stock available" title="<?= $block->escapeHtmlAttr(__('Availability')) ?>">
<span><?= $block->escapeHtml(__('In stock')) ?></span>
</div>
<?php else :?>
<div class="stock unavailable" title="<?= $block->escapeHtmlAttr(__('Availability')) ?>">
<span><?= $_product->getAttributeText('est_shippingtime'); ?></span>
</div>
<?php endif; ?>
<?php endif; ?>& don't forget to configure magento to show the stock status, otherwise it's not displayed
I found a easy solution to do it.
I created a attribute which is included in default set. There i have all my delivery times in all languages.
and then copied:
vendor/magento/module-catalog/view/frontend/templates/product/view/type/default.phtml
to:
app/design/frontend/{Package}/{theme}/Magento_Catalog/templates/product/view/type/default.phtml& now instead of the "out of stock" label i just display my custom attributes text 'est_shippingtime':
<?php /* @var $block \Magento\Catalog\Block\Product\View\AbstractView */?>
<?php $_product = $block->getProduct() ?>
<?php if ($block->displayProductStockStatus()) :?>
<?php if ($_product->isAvailable()) :?>
<div class="stock available" title="<?= $block->escapeHtmlAttr(__('Availability')) ?>">
<span><?= $block->escapeHtml(__('In stock')) ?></span>
</div>
<?php else :?>
<div class="stock unavailable" title="<?= $block->escapeHtmlAttr(__('Availability')) ?>">
<span><?= $_product->getAttributeText('est_shippingtime'); ?></span>
</div>
<?php endif; ?>
<?php endif; ?>& don't forget to configure magento to show the stock status, otherwise it's not displayed