Ten kod PHP składa się z dwóch głównych funkcji, które wpływają na wygląd strony Zamówienia w panelu administracyjnym WooCommerce.
- Funkcja add_payment_method_column($columns):
Ta funkcja jest wywoływana przez filtr ’manage_edit-shop_order_columns’, który pozwala na modyfikowanie kolumn na stronie Zamówień w panelu administracyjnym.
Parametr $columns to tablica kolumn wyświetlanych na stronie Zamówień.
Funkcja dodaje do tablicy $columns nowy element o kluczu ’payment_method’ i wartości ’Bramka płatnicza’. Klucz odpowiada za identyfikację kolumny, natomiast wartość to wyświetlany tytuł kolumny.
- Funkcja display_payment_method($column):
Ta funkcja jest wywoływana przez akcję ’manage_shop_order_posts_custom_column’, która jest uruchamiana dla każdej kolumny każdego zamówienia na stronie Zamówień.
Parametr $column to identyfikator kolumny dla której jest wywoływana funkcja.
Funkcja sprawdza, czy identyfikator kolumny jest równy ’payment_method’. Jeśli nie, funkcja zwraca sterowanie. Jeśli tak, pobiera zamówienie na podstawie ID postu, a następnie wyświetla tytuł metody płatności używanej w tym zamówieniu.
// Dodaj kolumnę do strony Zamówienia w adminie add_filter('manage_edit-shop_order_columns', 'add_payment_method_column'); function add_payment_method_column($columns) { $columns['payment_method'] = 'Bramka płatnicza'; return $columns; } // Wyświetl informacje o bramce płatniczej dla każdego zamówienia add_action('manage_shop_order_posts_custom_column', 'display_payment_method', 2); function display_payment_method($column) { global $post; if ('payment_method' !== $column) { return; } $order = wc_get_order($post->ID); echo $order->get_payment_method_title(); }
Podsumowanie w punktach:
Filtr ’manage_edit-shop_order_columns’ wywołuje funkcję add_payment_method_column($columns), dodającą nową kolumnę „Bramka płatnicza” do tabeli zamówień w panelu administracyjnym WooCommerce.
Akcja ’manage_shop_order_posts_custom_column’ wywołuje funkcję display_payment_method($column) dla każdej kolumny dla każdego zamówienia na stronie Zamówień.
Funkcja display_payment_method($column) sprawdza, czy identyfikator kolumny jest ’payment_method’. Jeżeli tak, pobiera informacje o zamówieniu i wyświetla tytuł metody płatności używanej w zamówieniu. Jeżeli nie, funkcja zwraca sterowanie bez robienia niczego.