[英]Woocommerce/Wordpress(Avada Theme) Remove Add to Cart and Details Buttons on Category Pages
[英]Remove “add to cart button” from loop (Wordpress Theme: Avada)
我想刪除除單篇文章之外的所有地方的“添加到購物車按鈕”。
我已經嘗試過此解決方案:
僅在woocommerce商店/類別頁面上隱藏“添加到購物車”按鈕
雖然它對我沒有用。 我猜這是因為我使用的模板是:Avada。 看起來模板使用的鈎子與普通的woocommerce鈎子不同。 使用在文件中找到的鈎子名稱,我嘗試了以下操作:
add_action( 'woocommerce_after_shop_loop_item', 'remove_add_to_cart_buttons', 1 ); function remove_add_to_cart_buttons() { remove_action( 'avada_woocommerce_buttons_on_rollover', 'avada_woocommerce_template_loop_add_to_cart',10 ); }
它什么也沒做。 有人知道我需要做什么嗎?
編輯:有這些行的文件類-avada-woocommerce.php
add_action( 'avada_woocommerce_buttons_on_rollover', array( $this, 'template_loop_add_to_cart' ), 10 );
...
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
如果我在父主題文件中刪除了這兩行的第一行,則添加到購物車按鈕會消失。 所以我知道這是我需要刪除的操作,但是我無法刪除它。
因此,我也嘗試了以下每一行:
remove_action( 'avada_woocommerce_buttons_on_rollover', 'avada_woocommerce_template_loop_add_to_cart',10 );
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart');
remove_action( 'avada_woocommerce_buttons_on_rollover', array( $this, 'template_loop_add_to_cart' ), 10 );
remove_action( 'avada_woocommerce_buttons_on_rollover', 'template_loop_add_to_cart' , 10 );
我也堅持這個問題,因為remove_action
對我不起作用。 僅通過瀏覽woocommerce模板的代碼,我才發現他們使用過濾器來調用此按鈕。 因此,請嘗試以下代碼:
add_filter( 'woocommerce_loop_add_to_cart_link', 'hide_add_to_cart_link', 10, 2 );
function hide_add_to_cart_link( $html, $product ) {
if ( !is_user_logged_in() ) {
$html = '';
}
return $html;
}
根據您的需要進行修改。 我也使用Avada,它對我有用!
需要覆蓋Avada Woocommerce掛鈎。 將此代碼添加到functions.php
function remove_woo_commerce_hooks() {
global $avada_woocommerce;
remove_action( 'woocommerce_after_shop_loop_item', array( $avada_woocommerce, 'template_loop_add_to_cart' ), 10 );
}
add_action( 'after_setup_theme', 'remove_woo_commerce_hooks' );
只需將下面的代碼添加到functions.php中
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart');
然后讓我知道結果。 謝謝
請使用下面的代碼從商店頁面刪除“ add to cart
按鈕,因為您缺少$avada_woocommerce
,這是用於avada woocommerce的變量。
remove_action( 'woocommerce_after_shop_loop_item', array( $avada_woocommerce, 'show_details_button' ), 15 );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.