Hoe je de knop 'Toevoegen aan winkelwagen' in WooCommerce kunt verbergen en verwijderen

Laten we beginnen met uitzoeken waarom je de knop 'Toevoegen aan winkelwagen' zou willen verbergen. Een van de meest effectieve manieren om het aankoopproces voor een specifiek product of winkel uit te schakelen, is door de knop 'Toevoegen aan winkelwagen' te verwijderen. Hoewel het misschien vreemd lijkt, kan het verwijderen van de knop 'Toevoegen aan winkelwagen' in sommige gevallen zeer nuttig zijn.

Er zijn veel redenen waarom u de knop 'Toevoegen aan winkelwagen' van sommige pagina's in uw winkel zou willen verwijderen, afgezien van het feit dat u dan meer aanpassingsopties krijgt:

  1. Wanneer een product niet op voorraad is of niet langer beschikbaar is
  2. Om de knop op basis van logica te deactiveren (bijv. voor specifieke gebruikersrollen of producten, niet-ingelogde gebruikers, enz.)
  3. Het product is nog niet te koop.
  4. Wanneer u wilt dat klanten deze knop gebruiken in plaats van het standaard WooCommerce-aankoopproces om een ​​bericht te sturen of een afspraak te maken.

Dit zijn slechts enkele voorbeelden van situaties waarin je de knop 'Toevoegen aan winkelwagen' uit je winkel wilt verbergen of verwijderen. Laten we beginnen met het verwijderen van de knop 'Toevoegen aan winkelwagen' in WooCommerce.

{automatisch}

 

Hoe verwijder je de knop 'Toevoegen aan winkelwagen' in WooCommerce

In dit artikel leer je hoe je de knop 'Toevoegen aan winkelwagen' op verschillende manieren kunt verbergen. We laten je zien hoe je het volgende kunt doen om meer opties te krijgen:

  1. Verwijder of verberg de knop 'Toevoegen aan winkelwagen' op de hele site.
  2. Verberg de knop 'Toevoegen aan winkelwagen' voor gebruikers die niet zijn ingelogd.
  3. Verwijder de knop 'Toevoegen aan winkelwagen' op basis van gebruikersrollen.
  4. Verberg de knop 'Toevoegen aan winkelwagen' bij bepaalde producten.
  5. De knop 'Toevoegen aan winkelwagen' alleen voor bepaalde categorieën uitschakelen
  6. Verwijder de knop tijdelijk. Deze verschijnt na een bepaalde datum weer.
  7. Laten we ze elk afzonderlijk eens in verschillende secties bekijken.

Let op: Omdat we de kernbestanden van WordPress gaan bewerken, raden we aan een volledige back-up van je site te maken voor het geval er iets misgaat. Je kunt ook een child theme gebruiken. Als je er nog geen hebt, kun je er zelf een maken of een child theme-plugin gebruiken.

1. Verwijder of verberg de knop 'Toevoegen aan winkelwagen' op de hele site

Er zijn verschillende opties om de knop 'Toevoegen aan winkelwagen' volledig uit uw winkel te verwijderen. Een van de eenvoudigste is om het volgende script in uw winkelmandje te plaatsen. kinderthema's functies.php bestand:

remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart');

remove_action( 'woocommerce_enkele_product_samenvatting', 'woocommerce_sjabloon_enkele_toevoegen_aan_winkelwagen', 30 );

We verwijderen de knop 'Toevoegen aan winkelwagen' op de productpagina met de eerste remove action()-hook, en we doen hetzelfde op de winkelwagenpagina met de tweede. Het uitschakelen van de optie om producten te kopen is daarentegen een nettere en betrouwbaardere oplossing. Je kunt de producten dan niet meer beschikbaar maken voor aankoop en voorkomen dat gebruikers ze op deze manier aan hun winkelwagen toevoegen.

Met het volgende script kunt u dat doen en ervoor zorgen dat al uw producten niet meer te koop zijn in uw winkel:

add_filter( 'woocommerce_is_koopbaar', '__return_false');

Hiermee wordt de knop 'Toevoegen aan winkelwagen' van WooCommerce uitgeschakeld, maar niet de knop zelf. Deze wordt vervangen door een 'Lees meer'-knop, die gebruikers doorverwijst naar de productpagina, waar geen knoppen meer staan.

Als u de knop 'Lees meer' naast de knop 'Toevoegen aan winkelwagen' wilt verbergen, moet u een CSS-regel gebruiken. Klanten kunnen daarentegen niets kopen omdat ze geen producten aan de winkelwagen kunnen toevoegen, zelfs niet als ze leren hoe ze de browserontwikkelaarstool kunnen gebruiken om deze weer zichtbaar te maken. Gebruik waar mogelijk de add filter()-hook in plaats van de remove action()-hook.

Lees verder: Hoe de tekst van de knop 'Toevoegen aan winkelwagen' te wijzigen

2. Verberg de knop 'Toevoegen aan winkelwagen' voor gebruikers die niet zijn ingelogd

Stel dat je een tijdelijke actie hebt voor je geregistreerde gebruikers. Je kunt een unieke landingspagina maken en alleen naar je geregistreerde gebruikers een e-mail sturen met de link, maar wat als ze deze met anderen delen? Je kunt de knop 'Toevoegen aan winkelwagen' uit je WooCommerce-winkel verwijderen (alleen voor niet-ingelogde gebruikers) om dit te voorkomen en ervoor te zorgen dat je alleen kortingen geeft aan de beoogde consument. Plak hiervoor het volgende script in het bestand 'functions.php' van je child-thema:

als (!is_user_logged_in()) {
// op productpagina
add_filter('woocommerce_is_koopbaar', '__return_false');

}

We schakelen de knop 'Toevoegen aan winkelwagen' alleen uit voor niet-ingelogde gebruikers door de native WordPress-functie is gebruiker ingelogd() toe te passen.

3. Verwijder de knop 'Toevoegen aan winkelwagen' op basis van gebruikersrollen

Een andere briljante optie is om de knop 'Toevoegen aan winkelwagen' uit te schakelen, afhankelijk van de rol van de gebruiker. Laten we eens kijken hoe je de knop onzichtbaar kunt maken voor elke beheerder:

add_action('wp_loaded','gebruikersrol_ophalen');

functie get_user_role(){

$current_user = wp_get_current_user();

  als(aantal($huidige_gebruiker->rollen)!==0){

  als ($huidige_gebruiker->rollen[0]=='beheerder'){

add_filter('woocommerce_is_koopbaar', '__return_false');

}

}

}

Het WordPress-gebruikersobject wordt opgehaald en het script past er twee voorwaarden op toe. De eerste is om te bepalen of een gebruiker een rol heeft, en de tweede is om producten alleen niet beschikbaar te maken voor aankoop als de gebruikersrol overeenkomt met de opgegeven rol (in dit geval beheerder). U kunt deze code gebruiken om de rol die u niet wilt zien op de knop 'Toevoegen aan winkelwagen' te wijzigen door de rol in if($current_user->roles[0]=='your_role'){ te bewerken.

4. Verberg de knop 'Toevoegen aan winkelwagen' bij bepaalde producten

Stel dat u bepaalde artikelen niet op voorraad hebt en u de knop 'Toevoegen aan winkelwagen' voor die artikelen tijdelijk wilt verbergen.

Kopieer en plak het volgende script in het bestand functions.php van het onderliggende thema om de knop voor specifieke producten te verwijderen:

add_filter('woocommerce_is_koopbaar', 'filter_is_koopbaar', 10, 2);

functie filter_is_koopbaar($is_koopbaar, $product ) {

globaal $product;

als( in_array( $product->get_id(), niet_koopbare_ids() )) {

return false;

}

retour $is_purchasable;

}

functie niet_koopbare_ids() {

retour array( 624,625 );

}

De knop 'Toevoegen aan winkelwagen' is in dit voorbeeldscript uitgeschakeld voor de producten met ID's 624 en 625. Overweeg deze ID's te vervangen door uw WooCommerce-product-ID's om dit aan te passen aan uw winkel. Zoals u ziet, kunt u een onbeperkt aantal producten toestaan ​​door de ID's eenvoudigweg met een komma te scheiden.

Ga naar je WordPress-dashboard > WooCommerce > Producten en beweeg je muis over een product in de lijst om de ID ervan te zien.

5. Schakel de knop 'Toevoegen aan winkelwagen' alleen voor bepaalde categorieën uit

Je kunt de knop 'Toevoegen aan winkelwagen' ook uitschakelen voor bepaalde categorieën. Als je de knop bijvoorbeeld wilt verbergen voor de categorie 'Laptops', kun je de volgende code gebruiken:

add_action('wp', 'QL_remove_add_to_cart_from_category' );   

functie QL_remove_add_to_cart_from_category(){ 

  als(is_product_categorie('laptops')) { 

    remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart'); 

  } 

}

Kopieer deze code en vervang "laptops" op regel 3 door de titel van de categorie waar de knop 'Toevoegen aan winkelwagen' verborgen moet worden.

6. Verwijder de knop tijdelijk en deze zal na een bepaalde datum weer verschijnen

Laten we een stap verder gaan en een aantal van de gelezen punten samenvoegen. Stel dat je op het punt staat een product te lanceren en je hebt al een productpagina met alle functies ervan aangemaakt. Als je die pagina wilt gebruiken om je klanten op de hoogte te stellen van de lancering en het product te promoten voordat het live gaat, kun je de knop 'Toevoegen aan winkelwagen' verbergen tot de officiële lancering en deze vervolgens automatisch laten verschijnen op de lanceringsdag.

Stel dat je van plan bent je product op 15 december 2020 te introduceren en je wilt de knop 'Toevoegen aan winkelwagen' tot die tijd verbergen en deze vervolgens op 15 december weer zichtbaar maken. Kopieer en plak hiervoor het onderstaande script:

add_filter( 'woocommerce_is_koopbaar', 'verberg_toevoegen_aan_winkelwagen_knop_tot_datum', 10, 2 );

functie hide_add_to_cart_button_until_date( $is_purchasable = true, $product ) {

$huidige_datum = datum('Jm-d');

$release_date = date( 'Jm-d', strtotime('2020-12-15') );

als( strtotime($huidige_datum) < strtotime($release_datum) && $product->get_id() == 624 ) {

$is_purchasable = false;

}

retour $is_purchasable;

}

De knop 'Toevoegen aan winkelwagen' wordt vervangen door een knop 'Lees meer' die gebruikers tot aan de lanceringsdatum naar de productpagina leidt. Laten we eens kijken hoe het script nu werkt. De code vergelijkt de huidige datum met de lanceringsdatum. Als de huidige datum eerder is, is het product niet meer beschikbaar voor aankoop.

Het product is beschikbaar voor aankoop wanneer de huidige datum gelijk is aan of hoger is dan de lanceringsdatum. De knop 'Toevoegen aan winkelwagen' verschijnt dan automatisch. Vergeet niet de datum en de product-ID (624 in ons voorbeeld) in te vullen.

In deze handleiding heb je verschillende methoden geleerd om de knop 'Toevoegen aan winkelwagen' te verwijderen. We hebben gezien hoe je deze in de hele winkel kunt verbergen, voor specifieke producten, gebruikers en gebruikersrollen, en zelfs hoe je deze voor een bepaalde dag kunt verbergen en vervolgens automatisch weer kunt weergeven. Dit geeft je wat meer speelruimte bij het aanpassen van je winkel aan verschillende scenario's.

Gebruik deze scripts als uitgangspunt en pas ze aan de behoeften van uw winkel aan.