wPHP - wordpress, woocommerce - kodowanie bez wtyczek
WordPress - zakoduj to sam w PHP
quantity-select

Zakup określonej liczby produktów 10, 20, 30 w woocommerce

Grzegorz Chodacki4 czerwca 2018layout, woocommerce quantity, select, woocommerce_quantity_input, woocommerce_quantity_input_args

Ciekawe pytanie padło na grupie woocommerce więc postanowiłem się mu przyjrzeć, tym bardziej, że jakiś rok temu podobną sztuczkę robiłem na sklepie z kiełbasami 🙂
Zadanie jest takie: klient na stronie produktu jak i w koszyku może wybrać jedynie określone ilości produktu. Dla naszego przykładu weźmy 10, 20, 30  sztuk. Sprawa jest dość prosta, użyjemy a właściwie nadpiszemy funkcję woocommerce_quantity_input. Za jednym zamachem załatwimy sprawę na stronie produktu jak i w koszyku. Po prostu zamienimy zwykłego inputa na selecta (pole tekstowe na listę rozwijaną). Funkcję oczywiście umieszczamy na początku pliku functions.php.

function woocommerce_quantity_input($data) {
 $min = 10;
 $max = 50;
 $step = 10;
 $options = '';
 
 for ( $count = $min; $count <= $max; $count = $count+$step ) {
 $options .= '<option value="' . $count . '">' . $count . '</option>';
 } 
 echo '
<div class="quantity_select"><select name="quantity">' . $options . '</select></div>

';
}

I po temacie tak naprawdę to nie ma co wyjaśniać w tym banalnym kodzie. Oczywiście możemy jeszcze rozważyć co się stanie gdy klient ze strony katalogowej kliknie “dodaj do koszyka” (albo mu tą opcję wyłączyć).

Gdyby jednak komuś nie spodobała się lista rozwijana to będzie jeszcze prościej. Wykorzystamy filtr woocommerce_quantity_input_args

add_filter( 'woocommerce_quantity_input_args', 'liczba_produktow', 10, 2 );
 
function liczba_produktow( $args, $product ) {
 
 $args['input_value'] = 10; // Rozpocznij od tej liczby (domyślnie = 1) 
 $args['max_value'] = 60; // Maksymalna liczba (domyślnie brak)
 $args['min_value'] = 10; // Minimalna liczba (domyślnie 1)
 $args['step'] = 10; // Wartość skoku (domyślnie 1)
 
 return $args;
 
}

Klient użył kodu rabatowego – pokaż mu obniżone ceny w sklepie Zamiana input submit na button w contact form 7

Related Posts

layout

Jak wyłączyć odzyskiwanie hasła

Sytuacja tak, że trzeba było zmienić hasła dla wszystkich adminów, ale bez usuwania ich kont. Natomiast trzeba było wyłączyć możliwość odzyskiwania hasła, żeby zablokowany użytkownik nie mógł go sobie zresetować. Oczywiście mały kod w functions.php

api-nbp

layout

Pobieranie aktualnego kursu walut przez API NBP

Jakiś czas temu zdarzyło się zadanie od klienta, który chciał mieć część produktów woocommerce z cenami w euro a część w złotówkach. I żeby nie było tak prosto to niech jeszcze system przelicza to euro na złotówki dla klienta. A co tam – niech je jeszcze przelicza po aktualnych kursach bo przecież co chwila coś […]

layout

Poczta interia – nie dochodzą maile

Jeden z klientów miał spory problem. Powiadomienia o zakupach, resetowanie haseł nie dochodziły na skrzynki pocztowe Interia. Niby śmieszny problem bo przecież każdy teraz używa gmail, ale akurat u tego klienta 30% klientów miało konta na interia. Post będzie krótki, ale konkretny. Z problemem walczyłem prawie pół roku. Nie pomogło wysyłanie maili poprzez SMTP – […]

Ostatnie wpisy

  • Jak wyłączyć odzyskiwanie hasła
  • Pobieranie aktualnego kursu walut przez API NBP
  • Poczta interia – nie dochodzą maile
  • Wyszukiwanie postów tylko po tytułach
  • Related product – produkty podobne w woocommerce

Najnowsze komentarze

    Archiwa

    • wrzesień 2022
    • lipiec 2022
    • kwiecień 2022
    • marzec 2022
    • październik 2021
    • wrzesień 2021
    • kwiecień 2021
    • marzec 2021
    • grudzień 2020
    • lipiec 2020
    • marzec 2020
    • luty 2020
    • styczeń 2020
    • maj 2019
    • luty 2019
    • listopad 2018
    • sierpień 2018
    • czerwiec 2018
    • maj 2018
    • marzec 2018
    • luty 2018
    • styczeń 2018

    Kategorie

    • dla admina
    • layout
    • optymalizacja
    • woocommerce

    Meta

    • Zaloguj się
    • Kanał wpisów
    • Kanał komentarzy
    • WordPress.org
    Strony na Wordpress - uKONTENTowani.pl
    TO NIE JEST STRONA DLA INSTALATORÓW WTYCZEK