在 element 上显示时,如何将 WordPress 产品的“添加到购物车”按钮替换为“查看更多”按钮并将用户发送到详细信息页面

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

我在 WooCommerce 上有外部产品和实物产品,而不是使用“添加到购物车”按钮将您发送到外部产品或将产品添加到购物车,我希望内部和外部产品都有一个按钮这表示“查看更多”并将用户引导至详细页面。

我可以使用上一个问题中的以下答案代码:

add_filter( 'woocommerce_loop_add_to_cart_link', 'replace_external_product_loop_add_to_cart_link', 100, 3 );
function replace_external_product_loop_add_to_cart_link( $button, $product, $args ) {
    // Only for external products
    if ( $product->is_type('external') ) {
        $button = sprintf( '<a href="%s" class="%s" %s>%s</a>',
            esc_url( $product->get_permalink() ),
            esc_attr( 'button' ),
            isset( $args['attributes'] ) ? wc_implode_html_attributes( $args['attributes'] ) : '',
            esc_html__( 'Ver Detalles' )
        );
    }
    return $button;
}

但是我的实体产品还是说添加到购物车...

参见示例www.faceup-romanorte.com,我一直无法弄清楚如何将其添加到“普通产品”中。

php woocommerce product
1个回答
0
投票

要使其适用于所有产品(外部和其他产品类型),您只需删除

if ( $product->is_type('external') ) {
,例如:

add_filter( 'woocommerce_loop_add_to_cart_link', 'replace_external_product_loop_add_to_cart_link', 100, 3 );
function replace_external_product_loop_add_to_cart_link( $button, $product, $args ) {
    return sprintf( '<a href="%s" class="%s" %s>%s</a>',
        esc_url( $product->get_permalink() ),
        esc_attr( 'button' ),
        isset( $args['attributes'] ) ? wc_implode_html_attributes( $args['attributes'] ) : '',
        esc_html__( 'Ver Detalles' )
    );
}
© www.soinside.com 2019 - 2024. All rights reserved.