WooCommerce 在结账时删除产品按钮
WooCommerce remove product button in checkout
我们正在使用 PHP 字符串来启用在结帐时删除产品的选项。
以下代码:
/**
* Allows to remove products in checkout page.
*
* @param string $product_name
* @param array $cart_item
* @param string $cart_item_key
* @return string
*/
function lionplugins_woocommerce_checkout_remove_item( $product_name, $cart_item, $cart_item_key ) {
if ( is_checkout() ) {
$_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
$product_id = apply_filters( 'woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key );
$remove_link = apply_filters( 'woocommerce_cart_item_remove_link', sprintf(
'<a href="%s" rel="nofollow" class="remove-icon" style="float:left;">x</a>',
esc_url( WC()->cart->get_remove_url( $cart_item_key ) ),
__( 'Remove this item', 'woocommerce' ),
esc_attr( $product_id ),
esc_attr( $_product->get_sku() )
), $cart_item_key );
return '<span>' . $remove_link . '</span> <span>' . $product_name . '</span>';
}
return $product_name;
}
但是排版有点乱
有没有办法强制 table 结构让它总是浮动得远 left/right?就像强制浮动,或一种“单独的”table 列,仅用于删除按钮。我尝试调整图标的 CSS 并添加更多填充或更改图标类型但没有成功。
对 PHP 和编码仍然一无所知,因此非常感谢任何帮助或指导。
编辑:
我相信这是其他人的答案 - Woocommerce : How to remove product lines on Checkout page?
但是我们使用的是“WooCommerce 复合产品”,它使 a.remove 按钮浮动在不同的位置,如上图所示。
通过以下方式解决 -
改用这个:'<a href="%s" class="remove" title="%s" data-product_id="%s" data-product_sku="%s">×</a>',
并且 CSS 删除了删除图标
td.product-name a.remove {
display:none !important;
}
然后简单地在 table 的末尾添加了函数。
我们正在使用 PHP 字符串来启用在结帐时删除产品的选项。
以下代码:
/**
* Allows to remove products in checkout page.
*
* @param string $product_name
* @param array $cart_item
* @param string $cart_item_key
* @return string
*/
function lionplugins_woocommerce_checkout_remove_item( $product_name, $cart_item, $cart_item_key ) {
if ( is_checkout() ) {
$_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
$product_id = apply_filters( 'woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key );
$remove_link = apply_filters( 'woocommerce_cart_item_remove_link', sprintf(
'<a href="%s" rel="nofollow" class="remove-icon" style="float:left;">x</a>',
esc_url( WC()->cart->get_remove_url( $cart_item_key ) ),
__( 'Remove this item', 'woocommerce' ),
esc_attr( $product_id ),
esc_attr( $_product->get_sku() )
), $cart_item_key );
return '<span>' . $remove_link . '</span> <span>' . $product_name . '</span>';
}
return $product_name;
}
但是排版有点乱
有没有办法强制 table 结构让它总是浮动得远 left/right?就像强制浮动,或一种“单独的”table 列,仅用于删除按钮。我尝试调整图标的 CSS 并添加更多填充或更改图标类型但没有成功。
对 PHP 和编码仍然一无所知,因此非常感谢任何帮助或指导。
编辑: 我相信这是其他人的答案 - Woocommerce : How to remove product lines on Checkout page?
但是我们使用的是“WooCommerce 复合产品”,它使 a.remove 按钮浮动在不同的位置,如上图所示。
通过以下方式解决 -
改用这个:'<a href="%s" class="remove" title="%s" data-product_id="%s" data-product_sku="%s">×</a>',
并且 CSS 删除了删除图标
td.product-name a.remove {
display:none !important;
}
然后简单地在 table 的末尾添加了函数。