在购物车Woocommerce中添加产品简短描述

问题描述 投票:4回答:1

我想在购物车中添加简短的产品说明:我确实将它添加到购物车中,但由于我的购物车位于标题页中,因此在结帐页面上没有显示它很奇怪。任何想法或其他解决方案都提前感谢非常有用

function excerpt_in_cart() {

$excerpt = get_the_excerpt();
$excerpt = substr($excerpt, 0, 80);
return '<br><p class="shortDescription">' . $excerpt .'...' . '</p>';
}
add_action( 'woocommerce_cart_item_name', 'excerpt_in_cart', 40 );

在结帐页面上,它不会从代码中显示此部分。 $ excerpt。' p出现在课堂上就好了。

php wordpress woocommerce
1个回答
2
投票
function excerpt_in_cart($cart_item_html, $product_data) {
global $_product;

$excerpt = get_the_excerpt($product_data['product_id']);
$excerpt = substr($excerpt, 0, 80);

echo $cart_item_html . '<br><p class="shortDescription">' . $excerpt . '...' . '</p>';
}

add_filter('woocommerce_cart_item_name', 'excerpt_in_cart', 40, 2);

首先woocommerce_cart_item_name钩是过滤钩而不是动作钩。

你正确做的大多数事情都是很少的问题

  • 你必须使用add_filter和woocommerce_cart_item_name钩子。
  • 覆盖了woocommerce创建的html而不是连接你的摘录。
  • 错过了使用他们的产品ID处理每个购物车项目的摘录。

附加信息:

这是来自wordpress核心文件plugin.php

function add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1) {
    return add_filter($tag, $function_to_add, $priority, $accepted_args);
}

函数add_action只是add_filter的包装函数。

© www.soinside.com 2019 - 2024. All rights reserved.