0

こんにちは、私は顧客がmagento(私のバージョン1.6.2.0)で新しい注文をするときに受け取る新しい注文メールへのリンクを追加しようとしています

/public_html/app/design/frontend/base/default/template/email/order/items/order/default.phtmlを次のように編集しました。

<?php $_item = $this->getItem() ?>
<?php $_order = $this->getItem()->getOrder() ?>
----
<!-- Start of edit file -->  
<a href="<?php echo $this->getProductUrl($_item) ?>">
<?php echo $this->htmlEscape($this->getSku($_item)) ?></a>

sku列で確認メールを受信すると、色が黒(デフォルトのcss)から水色のリンクに変わりますが、以下に示すようにリンクプロパティがありません: email_photo 私も試しました:

<a href="<?php echo $this->getUrlPath($_item) ?>">
<?php echo $this->htmlEscape($this->getSku($_item)) ?></a>

そして私は同じことになる。

誰かが私が間違っていることを教えてもらえますか?ありがとう。

4

3 に答える 3

5

列をなして

<a href="<?php echo $this->getUrlPath($_item) ?>">

$これはブロック*Mage_Sales_Block_Order_Email_Items_Order_Default*のインスタンスです。getUrlPath()関数またはgetProductUrl関数はありません。

$ _item変数を使用して製品オブジェクトを取得し、次にそれを使用してそのURLを取得する必要があります

$_item->getProduct()->getProductUrl()
于 2013-01-22T21:58:19.227 に答える
0

私は以前にこのコードを試しました:

<a href="<?php echo $_item->getProduct()->getUrlPath() ?>"><?php echo $this->htmlEscape($this->getSku($_item)) ?></a>
于 2013-01-22T21:59:48.683 に答える
0

Magento 2

注文メールの製品名と製品ページをリンクするには、次のファイルを編集します。

Magento_Sales/templates/email/items/order/default.phtml
Magento_Sales/templates/email/items/invoice/default.phtml
Magento_Sales/templates/email/items/shipment/default.phtml

製品のURLを取得するには、次のコードスニペットを使用して、リンクのhref属性に挿入します。

<?= $_item->getProduct()->getProductUrl(); ?>

例えば、

<p class="product-name"> <a href="<?= $_item->getProduct()->getProductUrl(); ?>"> <?= $block->escapeHtml($_item->getName()); ?> </a> </p>

コードスニペットの結果は、MagentoEメールでクリック可能な製品名になります。

チュートリアル:https ://themes.email/magento/product-links-in-magento-order-emails.html

于 2019-07-05T13:10:01.563 に答える