Archimidis Mertzanos.

Archimidis Mertzanos.


Proud Father & Husband - WordPress Lover - Lead WordPress Developer @ Hellenic Technologies - Plugin Author - Speaker @ WordCamp Athens 2017

Μάρτιος 2019
ΔΤΤΠΠΣΚ
« Σεπ  
 123
45678910
11121314151617
18192021222324
25262728293031

Kατηγορίες


Εμφάνιση τιμής με φόρο στο order popup του WooCommerce

Αρχιμήδης ΜερτζάνοςΑρχιμήδης Μερτζάνος

Στις τελευταίες εκδόσεις του WooCommerce έχει προστεθεί η δυνατότητα του order popup στη σελίδα των παραγγελιών στο wp-admin. Όμως σε κάποιες περιπτώσεις θέλει λίγο επεξεργασία για να καλύπτει κάποιες ανάγκες..

Επειδή στο mertzanos.gr θα αναφερόμαστε σε αληθινά προβλήματα και λύσεις , θα βλέπουμε τέτοια κυρίως.
Σε αυτό το WooCommerce tutorial θα κάνουμε το εξής: Θα προσπαθήσουμε να εμφανίσουμε άλλη μία στήλη στον παραπάνω πίνακα χρησιμοποιώντας hooks του WooCommerce.

Τι γινόταν πριν την αλλαγή;

Στο e-shop του ο πελάτης πρόσθετε τιμές με τον φόρο Φ.Π.Α και στη συνέχεια όταν γινόταν παραγγελία στο διαχειριστικό έβλεπε τα παρακάτω:

Μέσα στο Popup αυτό ο shop manager / admin έχει τη δυνατότητα να δει γρήγορα κάποια στοιχεία της παραγγελίας . Αυτό το popup έχει την παρακάτω εμφάνιση:

Αυτό είναι το WooCommerce order preview popup που εμφανίζεται στο διαχειριστικό των παραγγελιών

Όπως βλέπετε μας δείχνει ποσότητα προϊόντος , τον φόρο και σύνολο προ φόρου. Εμφανίζεται στη σελίδα των παραγγελιών, όταν πατάμε πάνω στο «μάτι» που βλέπετε στην παρακάτω εικόνα:

Πατώντας το εικονίδιο με το "μάτι" εμφανίζεται το order popup για τη συγκεκριμένη παραγγελία.

Άρα στην ουσία, αυτό που έλειπε ήταν η συνολική τιμή . Ένα επιπρόσθετο column το οποίο θα έδειχνε και την συνολική τιμή.

Μετά από ψάξιμο διαπιστώθηκε πώς το αρχείο που ελέγχει τo preview order popup βρίσκεται στο εξής σημείο:

wp-content\plugins\woocommerce\includes\admin\list-tables\abstract-class-wc-admin-list-table.php

Είναι προφανές πώς δεν θα πειράξουμε τίποτα σε αυτό το αρχείο. Θα ψάξουμε αν μπορούμε όμως να κάνουμε αλλαγές στο theme μας, μέσω κάποιων hooks που υπάρχουν εδώ. Μετά από ψάξιμο διαπιστώσαμε πώς θα χρησιμοποιήσουμε τα παρακάτω hooks.

woocommerce_admin_order_preview_line_item_columns
woocommerce_admin_order_preview_line_item_column_(column)

Reference:

woocommerce_admin_order_preview_line_item_columns

woocommerce_admin_order_preview_line_item_column_column

Λύση:

Στο functions.php του theme μας, ή καλύτερα του child theme μας πάμε και γράφουμε τα παρακάτω:

<?php
/**
* Το παρακάτω filter προσθέτει την έξτρα στήλη.
*/
add_filter( 'woocommerce_admin_order_preview_line_item_columns', 'mertzanos_add_totalCol', 10, 2 );

function mertzanos_add_totalCol( $array, $order ){

   $array['totalwtax'] = __('Total With Tax'); // Προσθέτει την έξτρα στήλη

   return $array;

}

/**
* Στο παρακάτω filter: woocommerce_admin_order_preview_line_item_column_(column) εμείς γράφουμε το key του column , το οποίο είναι από επάνω 'totalwtax'. Αυτά πάντα lowercase.
*/

add_filter( 'woocommerce_admin_order_preview_line_item_column_totalwtax', 'mertzanos_add_totalCol_value', 10, 4 );

function mertzanos_add_totalCol_value( $string, $item, $item_id, $order ){

$string = wc_price( $item->get_total()+$item->get_total_tax(), array( 'currency' => $order->get_currency() ) );

return $string;
}

Αν όλα πήγαν καλά κάνουμε μία νέα παραγγελία και πλέον:

Πλέον το νέο column προστέθηκε. Το column αυτό δείχνει τη νέα τιμή με το φόρο μαζί.

Proud Father & Husband - WordPress Lover - Lead WordPress Developer @ Hellenic Technologies - Plugin Author - Speaker @ WordCamp Athens 2017

    Αφήστε σχόλιο

    avatar
      Subscribe  
    Ενημέρωσε με για..