woocommerce_loop_add_to_cart_link
Filters the add to cart button class.
Использование
add_filter( 'woocommerce_loop_add_to_cart_link', 'wp_kama_woocommerce_loop_add_to_cart_link_filter', 10, 3 ); /** * Function for `woocommerce_loop_add_to_cart_link` filter-hook. * * @param string $class The class. * @param $product * @param $args * * @return string */ function wp_kama_woocommerce_loop_add_to_cart_link_filter( $class, $product, $args ){ // filter... return $class; }
- $class(строка)
- The class.
- $product
- -
- $args
- -
Список изменений
С версии 8.7.0 | Введена. |
Где вызывается хук
woocommerce/packages/woocommerce-blocks/src/BlockTypes/ProductButton.php 191-225
return apply_filters( 'woocommerce_loop_add_to_cart_link', strtr( '<div data-wc-interactive class="wp-block-button wc-block-components-product-button {classes} {custom_classes}" {div_directives} > <{html_element} href="{add_to_cart_url}" class="{button_classes}" style="{button_styles}" {attributes} {button_directives} > <span {span_button_directives}> {add_to_cart_text} </span> </{html_element}> {view_cart_html} </div>', array( '{classes}' => esc_attr( $text_align_styles_and_classes['class'] ?? '' ), '{custom_classes}' => esc_attr( $classname . ' ' . $custom_width_classes ), '{html_element}' => $html_element, '{add_to_cart_url}' => esc_url( $product->add_to_cart_url() ), '{button_classes}' => isset( $args['class'] ) ? esc_attr( $args['class'] ) : '', '{button_styles}' => esc_attr( $styles_and_classes['styles'] ), '{attributes}' => isset( $args['attributes'] ) ? wc_implode_html_attributes( $args['attributes'] ) : '', '{add_to_cart_text}' => esc_html( $initial_product_text ), '{div_directives}' => $is_ajax_button ? $div_directives : '', '{button_directives}' => $is_ajax_button ? $button_directives : '', '{span_button_directives}' => $is_ajax_button ? $span_button_directives : '', '{view_cart_html}' => $is_ajax_button ? $this->get_view_cart_html() : '', ) ), $product, $args );
woocommerce/templates/loop/add-to-cart.php 24-36
echo apply_filters( 'woocommerce_loop_add_to_cart_link', // WPCS: XSS ok. sprintf( '<a href="%s" data-quantity="%s" class="%s" %s>%s</a>', esc_url( $product->add_to_cart_url() ), esc_attr( isset( $args['quantity'] ) ? $args['quantity'] : 1 ), esc_attr( isset( $args['class'] ) ? $args['class'] : 'button' ), isset( $args['attributes'] ) ? wc_implode_html_attributes( $args['attributes'] ) : '', esc_html( $product->add_to_cart_text() ) ), $product, $args );