문제

I want to add custom link in More Information tab. See attached screenshot:

I want to give a link instead of text

enter image description here

도움이 되었습니까?

해결책

  • Create an Attribute in admin with text type say external_link

  • Add phtml at:

app/design/frontend/{Package}/{theme}/Magento_Catalog/layout/catalog_product_view.xml

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceBlock name="product.info.addtocart">
            <block class="Magento\Catalog\Block\Product\View" name="external.link" template="Magento_Catalog::externallink.phtml"/>
       </referenceBlock>
    </body>
</page>

Now create phtml and get attribute value:

app/design/frontend/{Package}/{theme}/Magento_Catalog/templates/externallink.phtml

<?php $product = $block->getProduct(); ?>
<?php if($link = $product->getExternalLink()){ ?>
    <div class="link">
        <a href="<?= $link; ?>"><?= $block->escapeHtml(__('Link text')) ?></a>
    </div>
<?php } ?>

Hope above will help!

다른 팁

Then you need to do the following things.

  1. first create one product attribute where you mention this link of third party.

  2. Now create one custom extension and create custom phtml file and call the file on product page on specific by using reference block.

  3. Now in that phtml file, fetch that product attribute value and show to customer.

I was able to do this by adding the attribute then importing via csv with text similar to the following

'<a href='https://pirate.black/' target='_blank'>https://pirate.black//</a>

It will also work if directly entered in the new product attribute.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 magento.stackexchange
scroll top