在WooCommerce“新订单”通知的产品标题中添加精选图片网址

时间:2017-10-11 20:34:39

标签: php wordpress woocommerce orders email-notifications

我制作了一个过滤器来更新woocommerce上的订单显示方式。 基本上我需要店主能够点击每个产品的名称(现在链接到特色图片),并且他能够看到URL(因为图像文件名对他们来说跟踪产品很有用)< / p>

我只需要影响发送给店主的新订单电子邮件。

我在functions.php中的代码会在所有电子邮件中更新BUT,并在网站上订购确认表。

的问题?我怎样才能影响新订单电子邮件?我想我在这里错过了一些东西。

// item name link to product

add_filter( 'woocommerce_order_item_name', 'display_product_title_as_link', 10, 2 );
function display_product_title_as_link( $item_name, $item ) {

    $_product = get_product( $item['variation_id'] ? $item['variation_id'] : $item['product_id'] );

    $image = wp_get_attachment_image_src( get_post_thumbnail_id( $_product->post->ID ), 'full' );

    return '<a href="'. $image[0] .'"  rel="nofollow">'. $item_name .'</a>
    <div style="color:blue;display:inline-block;clear:both;">'.$image[0].'</div>';

}

2 个答案:

答案 0 :(得分:1)

首先,代码中存在一些错误,如:

  • 功能 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath { return 120.0; } 显然已过时,已被 get_product()
  • 取代
  • 由于可以直接访问Woocommerce 3 + WC_Product属性,而是使用可用的方法。

以下是获得您期望的正确方法(仅限“新订单”管理员通知)

wc_get_product()

代码进入活动子主题(活动主题或任何插件文件)的function.php文件中。

在WooCommerce 3 +中测试并运行

答案 1 :(得分:1)

@LoicTheAztec-它无法工作!以图片形式href?全图显示为缩略图?(大电子邮件)缺少产品的永久链接...修复功能display_product_title_as_link

function display_product_title_as_link( $item_name, $item ) {
    $product = wc_get_product( $item['variation_id'] ? $item['variation_id'] : $item['product_id'] );
    $image = wp_get_attachment_image_src( $product->get_image_id(), 'thumbnail' );
    $product_name = $product->get_name();
    $product_link = get_permalink( $product->get_id() );
    return '<a href="'. $product_link .'" target="_blank"><img width="70" height="70" src="'.$image[0].'" alt="'. $product_name .'">'. $product_name .'</a> ';
}