我有两个代码来更改我的WooCommerce变量产品的产品名称。第一个可以在任何地方正常工作,但不是在我的浮动车插件(它使用默认的产品名称)。
add_action( 'woocommerce_before_calculate_totals', 'custom_cart_items_prices', 10, 1 );
function custom_cart_items_prices( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
if ( did_action( 'woocommerce_before_calculate_totals' ) >= 2 )
return;
foreach ( $cart->get_cart() as $cart_item ) {
$product = $cart_item['data'];
$modell = $product->get_attribute('pa_modell');
$reparatur = $product->get_attribute('pa_reparatur');
$original_name = method_exists( $product, 'get_name' ) ? $product->get_name() : $product->post->post_title;
$new_name = '<class="new-product-name">' . $original_name . __( " ", "woocommerce") . $modell . __( " - ", "woocommerce") . $reparatur;
if( method_exists( $product, 'set_name' ) )
$product->set_name( $new_name );
else
$product->post->post_title = $new_name;
}
}
第二个是我的“浮动购物车插件”,但如果我也使用它,我在购物车和结帐页面表上有两次相同的名字。
function show_model_in_cart_items( $item_name, $cart_item, $cart_item_key ) {
$product = $cart_item['data'];
$modell = $product->get_attribute('pa_modell');
$reparatur = $product->get_attribute('pa_reparatur');
{
$item_name = '<class="product-model">' . $item_name . __( " ", "woocommerce") . $modell . __( " - ", "woocommerce") . $reparatur;
}
return $item_name;
}
add_filter( 'woocommerce_cart_item_name', 'show_model_in_cart_items', 99, 3 );
这些代码的某些部分是在互联网上找到的,其他部分是我自己写的。有没有人知道如何组合它,使它在任何地方都可以工作,而不必在购物车中使用相同的名称2次?
我找到了一个解决办法。有时候很简单...就像一个简单的如果和其他。
add_filter( 'woocommerce_cart_item_name', 'show_model_in_cart_items', 99, 3 );
function show_model_in_cart_items( $item_name, $cart_item, $cart_item_key ) {
if ( is_checkout() ) {
return $item_name;
}
else {
$product = $cart_item['data'];
$modell = $product->get_attribute('pa_modell');
$reparatur = $product->get_attribute('pa_reparatur');
{
$item_name = '<class="reparatur-beschreibung">' . $item_name . __( " ", "woocommerce") . $modell . __( " - ", "woocommerce") . $reparatur;
}
return $item_name;
}}
现在,浮动购物车插件可以在任何地方使用它,除了结帐,我有其他代码来更正产品标题。
我是新来的。我想将产品添加到购物车并列出购物车的所有产品。我已经将Co-Cart插件添加到我的服务器,并且我正在使用Co-Cart API实现购物车相关功能。 我面临的问题是,我不能在我的反应本地应用程序中查看购物车产品。以下是我现在使用的API: 1.将产品添加到购物车: 方法:邮寄 URL:https://www.myhost.com/wp-json/wc/v2/cart/add?token=
问题内容: 我有上面的代码。 如果我在cart_item上运行print_r,我将得到一个多维数组: 我如何只获得product_id? 我试过$ test = 没用 问题答案: 要获取 foreach循环中的每个购物车商品(对于简单产品): 如果是可变产品,请获取 : 或在两种情况下 ( Woocommerce 3+中 的 Object在哪里) : 更新: 循环外使用产品ID 1)打破循环 (仅
如何在Woocommerce购物车页面中的购物车项目名称后添加产品ID? 我知道我需要先不返回,因为这样会把我从函数中拉出来,但我很好奇我该如何去做这件事。
我经营一家Woocommerce商店,该商店也提供免费产品(_常规价格=0)。客户必须选择数量并将其添加到购物车中,然后下订单才能收到产品。但这并不是Woocommerce的工作原理,它隐藏了所有价格为0的产品的“添加到购物车”链接。并且不会在购物车页面中显示它们。有没有解决这个问题的办法?非常感谢。
你在为它做什么?我在文件末尾(wp-content/plugins/woocommerce/woocommerce.php)写了这个字符串: 但当我从购物车中删除项目时,它就不起作用了! 但也不起作用