suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Ändern Sie die Woocommerce-Schaltflächenfunktion „In den Warenkorb“, um nur zur Produktseite weiterzuleiten

Hallo, ich möchte die Funktionalität der Schaltfläche „In den Warenkorb“ ändern, um nur zur Produktseite weiterzuleiten und nicht in den Warenkorb zu legen

add_filter( 'woocommerce_loop_add_to_cart_link', 'redirect_to_product_page', 10, 2 );
 
function redirect_to_product_page( $link, $product ) {
    global $woocommerce;
    $product_cat = wp_get_post_terms( $product->get_id(), 'product_cat', array( 'fields' => 'slugs' ) );
    $product_cat = isset( $product_cat[0] ) ? $product_cat[0] : '';
    $link = get_site_url() . '/product/' . $product_cat . '/' . $product->get_slug() . '/';
    return $link;
}

Das ist der Code, den ich ausprobiert habe, aber er ersetzt nur „Zum Warenkorb hinzufügen“ durch die richtige URL

P粉009828788P粉009828788457 Tage vor541

Antworte allen(1)Ich werde antworten

  • P粉810050669

    P粉8100506692023-09-13 00:26:25

    您可以删除该按钮,然后用您自己的信息将其放回去。这还允许您更改按钮文本:

    add_action('init', 'remove_loop_button');
    function remove_loop_button(){
        remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10);
    }
    
    add_action('woocommerce_after_shop_loop_item', 'replace_add_to_cart');
    function replace_add_to_cart() {
        global $product;
        $button_text = 'View Product';
        echo '<a class ="button product_type_simple add_to_cart_button ajax_add_to_cart" href="' . $product->get_permalink() . '">' . $button_text . '</a><br/>';
    }

    Antwort
    0
  • StornierenAntwort