פעולות המנהל מבוצעות באמצעות Ajax (הפעלת פקודה ביוזמת javascript בעמדה אל השרת). המידע מועבר ב POST. (להבדיל מ GET שבו הפרמטרים מועברים בשורת הפקודה).
משתף לגבי הבנות לגבי פעולת עדכון הזמנה בעמדת המנהל. הכפתור מפעיל את הפקודה
calc_line_taxes. ניסיתי לבצע פעולה נוספת ע"י הוספת פונקציה:
add_action('wp_ajax_woocommerce_calc_line_taxes', array($this, 'update_prices'), 9); לאחר חפירה התברר כך: - פעולה השרת מתבסס על שדה items המועבר ב POST ולא ע"ב המידע השמור ב-DB. הדבר נכון, היות שפעולת המנהל המצופה היא על ההזמנה כפי שמוצגת ולא על ההזמנה השמורה. - מכאן שבמידה ורוצים לשנות את תוכן ההזמנה אין אפשרות לבצע לפני הפעולה המקורית של WooCommerce על ההזמנה כי המידע ידרס בפונקציה calc_line_taxes, הכוללת פרסור של items. - ולא ניתן לבצע אחרי, מאחר ש calc_line_taxes מסתיימת ב wp_die. - אם כך האלטרנטיבה היא להחליף את calc_line_taxes בפונקציה שעושה את הכל. אם נשים את הפונקציה החדשה בעדיפות גבוהה (מספר קטן מ-10) היא תרוץ לפני calc_line_taxes!