Advertisement
daymobrew

Add Track button to My Orders table.

Apr 18th, 2022
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.17 KB | None | 0 0
  1. <?php
  2. /*
  3. Plugin Name: Tracking button to My Orders
  4. Plugin URI: https://www.damiencarbery.com/
  5. Description: Add a Track button to the My Orders page. Use the CMB2 tracking info from <a href="https://www.damiencarbery.com/2020/01/add-tracking-info-to-woocommerce-order/">https://www.damiencarbery.com/2020/01/add-tracking-info-to-woocommerce-order/</a>.
  6. Author: Damien Carbery
  7. Author URI: https://www.damiencarbery.com
  8. Version: 0.1
  9. */
  10.  
  11.  
  12. // Add Track button only when the tracking plugin is active.
  13. add_action( 'plugins_loaded', 'dcwd_check_for_tracking_plugin' );
  14. function dcwd_check_for_tracking_plugin() {
  15.     if ( function_exists( 'dcwd_add_tracking_info_to_order_completed_email' ) ) {
  16.         add_filter( 'woocommerce_my_account_my_orders_actions', 'dcwd_add_track_button_to_my_orders_actions', 20, 2 );
  17.     }
  18. }
  19.  
  20.  
  21. // Verify that the order has a tracking url before displaying the Track button.
  22. function dcwd_add_track_button_to_my_orders_actions( $actions, $order ) {
  23.     $tracking_url = get_post_meta( $order->get_id(), 'tracking_url', true );
  24.     if ( !empty( $tracking_url ) ) {
  25.         $actions[ 'track' ] = array( 'url'  => $tracking_url, 'name' => 'Track' );
  26.     }
  27.  
  28.     return $actions;
  29. }
  30.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement