我想在订购时收到的处理订单电子邮件中添加产品链接。当订单发出订单电子邮件时,我想在用户点击时点击重定向到详细产品页面时获取产品链接。有没有办法,我得到产品链接或产品标题是超链接。
感谢
答案 0 :(得分:4)
我目前正在使用此解决方案,我在另一页的评论中找到了该解决方案。这不是我的代码。
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'] );
$link = get_permalink( $_product->id );
return '<a href="'. $link .'" rel="nofollow">'. $item_name .'</a>';
}
答案 1 :(得分:0)
我一直想知道这是如何运作的。几乎没有任何信息可用 - 至少没有详细的分步说明。
我提出的最佳解决方案是编辑customer-processing-order.php。
我所做的只是在文本编辑器中打开并添加了几行文字:
“您的订单已收到,现在正在处理中。您的订单详情如下所示,供您参考。请访问”http://www.youlinkurl“。
最终用户不得不复制并粘贴该链接,但至少它可以正常工作。
答案 2 :(得分:0)
gunbunnysoulja的答案非常有效,但需要两个小小的更新:
更新的答案如下:
add_filter( 'woocommerce_order_item_name', 'display_product_title_as_link', 10, 2 );
function display_product_title_as_link( $item_name, $item ) {
$_product = wc_get_product( $item['variation_id'] ? $item['variation_id'] : $item['product_id'] );
$link = get_permalink( $_product->get_id() );
return '<a href="'. $link .'" rel="nofollow">'. $item_name .'</a>';
}
答案 3 :(得分:0)
要将产品名称与其订单电子邮件中的产品页面链接起来,请打开子主题的functions.php 文件并添加以下代码片段:
* Product Links in WooCommerce Order Emails
*/
add_filter('woocommerce_order_item_name', 'woocommerce_order_item_link', 10, 3);
function woocommerce_order_item_link( $item_name, $item, $bool ) {
$url = get_permalink( $item['product_id'] ) ;
return '<a href="'. $url .'">'.$item_name .'</a>';
}