CheckoutWC kompatibilitás

A csomagpont választó kompatibilis a CheckoutWC bővítménnyel is, feltéve, ha az alábbi beállításokat használod:

A CheckoutWC beállításokban engedélyezd a Local Pickup opciót. Ilyenkor a pénztár oldal első lépésénél megkérdezi, hogy házhoz kéred, vagy személyesen veszed át, az utóbbi lesz a csomagpontos szállítás. Itt értelem szerűen nevezd át a házhozszállítás és a személyes átvételes opciók nevét, mert az alap fordítás nem túl jó(Behajóz…:))

A Local Pickup Shipping Methods-nál ki kell választani azokat a szállítási módokat, amiket személyes átvételként fog kezelni, itt pipáld be a csomagpontos opciót.

Fontos, hogy az Enable Pickup Step is legyen bepipálva, mert anélkül nem hozza létre azt a lépést, ahol a csomagpontot ki lehet választani.
Ha ezek a beállítások megvannak, akkor így fog kinézni a pénztár oldal:

Ha a csomagpontos opcióval lépsz tovább, akkor lehetőség van kiválasztani a csomagpontot, és a tovább a fizetés után kéri majd be a számlázási adatokat:

Van még pár módosítás, amit érdemes elvégezni. Egyrészt működésben nem teljesen csomagpontra van felkészítve a CheckoutWC ezen funkciója, hanem például bolti átvételre, másrészt a magyar fordítás nem tökéletes. Az alábbi snippeteket érdemes használni, ezzel tudod javítani a hibákat:

//Jobb oldalt Elvitel helyett Szállítás felirat
add_filter('cfw_cart_totals_shipping_label', function(){
    return 'Szállítás';
}, 11);

//Ellenőrzi, hogy a csomagpontos szállítási mód van e kiválasztva
function is_vp_pont_selected() {
    //Get selected shipping methd
    $chosen_methods = WC()->session->chosen_shipping_methods;

    //If vp_pont is chosen
    $is_vp_pont_selected = false;
    if($chosen_methods) {
        foreach ($chosen_methods as $chosen_method) {
            if(strpos($chosen_method, 'vp_pont') !== false) {
                $is_vp_pont_selected = true;
            }
        }
    }
    
    return $is_vp_pont_selected;
}

Ha az van kiválasztva, akkor az "ingyenes" szöveg helyett csak egy kötőjelet rak
add_filter('cfw_shipping_free_text', function($label){
    $selected_pont = WC()->session->get( 'selected_vp_pont' );
    if(is_vp_pont_selected() && !$selected_pont) {
        return '-';
    }

    return $label;
});

//Jobb oldalt a rendelés összegzésnél is mutatja a kiválasztott csomagpontot
add_action('woocommerce_review_order_before_order_total', function(){

    //Get selected pont
    $selected_pont = WC()->session->get( 'selected_vp_pont' );

    if(is_vp_pont_selected() && $selected_pont) {
        ?>
        <tr class="vp-woo-pont-review-order-checkoutwc">
            <th><?php echo esc_html_x('Pickup point', 'frontend', 'vp-woo-pont'); ?></th>
            <td data-title="<?php echo esc_attr_x('Pickup point', 'frontend', 'vp-woo-pont'); ?>">
                <div class="vp-woo-pont-review-order-selected">
                    <i class="vp-woo-pont-provider-icon-<?php echo esc_attr($selected_pont['provider']); ?>"></i>
                    <div class="vp-woo-pont-review-order-selected-info">
                        <strong><?php echo esc_html($selected_pont['name']); ?>:</strong>
                        <span><?php echo esc_html($selected_pont['addr']); ?>, <?php echo esc_html($selected_pont['zip']); ?> <?php echo esc_html($selected_pont['city']); ?></span>
                    </div>
                </div>
            </td>
        </tr>
        <?php
    }

});

//Ha csomagpontos szállítás van kiválasztva, felül a szállítási cím helyett a "Csomagpontos szállítás" szöveget írja
add_filter( 'cfw_get_review_pane_shipping_address', function($label){
    if(is_vp_pont_selected()) {
        $label = 'Csomagpontos szállítás';
    }
    return $label;
}, 11);

//Mód helyett szállítás felirat felül
add_filter('cfw_ship_to_label', function($label){
    if(is_vp_pont_selected()) {
        $label = 'Szállítás';
    }
    return $label;
}, 11);

//Felül a lépésekben Elvitel helyett Csomagpont felirat
add_filter('cfw_event_data', function($data){
    $data['messages']['pickup_label'] = 'Csomagpont';
    return $data;
});

Bővítmény információk

Verziószám: 3.4.2.2
Legutóbb frissítve: 2024. 10. 07.
Változási napló: Megtekint

WooCommerce Csomagpontok és Címkék