Version Description
Download this release
Release Info
Developer | aftership |
Plugin | AfterShip – WooCommerce Tracking |
Version | 1.7.4 |
Comparing to | |
See all releases |
Code changes from version 1.7.3 to 1.7.4
- aftership-functions.php +21 -0
- aftership.php +13 -13
- api/class-aftership-api-orders.php +34 -32
- readme.txt +1 -1
aftership-functions.php
CHANGED
@@ -13,3 +13,24 @@ if ( ! function_exists( 'is_woocommerce_active' ) ) {
|
|
13 |
return AfterShip_Dependencies::woocommerce_active_check();
|
14 |
}
|
15 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
return AfterShip_Dependencies::woocommerce_active_check();
|
14 |
}
|
15 |
}
|
16 |
+
|
17 |
+
/**
|
18 |
+
* Get woo order ID
|
19 |
+
*/
|
20 |
+
if ( ! function_exists( 'get_order_id' ) ) {
|
21 |
+
function get_order_id($order) {
|
22 |
+
return (method_exists($order, 'get_id'))? $order->get_id() : $order->id;
|
23 |
+
}
|
24 |
+
}
|
25 |
+
|
26 |
+
/**
|
27 |
+
* @see https://docs.woocommerce.com/wc-apidocs/source-class-WC_Abstract_Legacy_Order.html#406
|
28 |
+
* Get attribute from WC_Order
|
29 |
+
*
|
30 |
+
*/
|
31 |
+
if ( ! function_exists( 'order_post_meta_getter' ) ) {
|
32 |
+
function order_post_meta_getter($order, $attr) {
|
33 |
+
$meta = get_post_meta(get_order_id($order), '_'. $attr, true);
|
34 |
+
return $meta;
|
35 |
+
}
|
36 |
+
}
|
aftership.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: AfterShip - WooCommerce Tracking
|
4 |
Plugin URI: http://aftership.com/
|
5 |
Description: Add tracking number and carrier name to WooCommerce, display tracking info at order history page, auto import tracking numbers to AfterShip.
|
6 |
-
Version: 1.7.
|
7 |
Author: AfterShip
|
8 |
Author URI: http://aftership.com
|
9 |
|
@@ -298,15 +298,15 @@ if (is_woocommerce_active()) {
|
|
298 |
if (isset($_POST['aftership_tracking_number'])) {
|
299 |
//
|
300 |
// // Download data
|
301 |
-
$tracking_provider =
|
302 |
-
// $tracking_number =
|
303 |
-
// $tracking_provider_name =
|
304 |
-
// $tracking_required_fields =
|
305 |
-
// $shipdate =
|
306 |
-
// $postal =
|
307 |
-
// $account =
|
308 |
-
// $tracking_key =
|
309 |
-
// $tracking_destination_country =
|
310 |
//
|
311 |
// // Update order data
|
312 |
update_post_meta($post_id, '_aftership_tracking_provider', $tracking_provider);
|
@@ -322,9 +322,9 @@ if (is_woocommerce_active()) {
|
|
322 |
|
323 |
foreach ($this->aftership_fields as $field) {
|
324 |
if ($field['type'] == 'date') {
|
325 |
-
update_post_meta($post_id, '_' . $field['id'],
|
326 |
} else {
|
327 |
-
update_post_meta($post_id, '_' . $field['id'],
|
328 |
}
|
329 |
}
|
330 |
}
|
@@ -561,7 +561,7 @@ if (is_woocommerce_active()) {
|
|
561 |
*/
|
562 |
function email_display($order)
|
563 |
{
|
564 |
-
$this->display_tracking_info((
|
565 |
}
|
566 |
|
567 |
private function display_track_button($tracking_provider, $tracking_number, $required_fields_values)
|
3 |
Plugin Name: AfterShip - WooCommerce Tracking
|
4 |
Plugin URI: http://aftership.com/
|
5 |
Description: Add tracking number and carrier name to WooCommerce, display tracking info at order history page, auto import tracking numbers to AfterShip.
|
6 |
+
Version: 1.7.4
|
7 |
Author: AfterShip
|
8 |
Author URI: http://aftership.com
|
9 |
|
298 |
if (isset($_POST['aftership_tracking_number'])) {
|
299 |
//
|
300 |
// // Download data
|
301 |
+
$tracking_provider = wc_clean($_POST['aftership_tracking_provider']);
|
302 |
+
// $tracking_number = wc_clean($_POST['aftership_tracking_number']);
|
303 |
+
// $tracking_provider_name = wc_clean($_POST['aftership_tracking_provider_name']);
|
304 |
+
// $tracking_required_fields = wc_clean($_POST['aftership_tracking_required_fields']);
|
305 |
+
// $shipdate = wc_clean(strtotime($_POST['aftership_tracking_shipdate']));
|
306 |
+
// $postal = wc_clean($_POST['aftership_tracking_postal']);
|
307 |
+
// $account = wc_clean($_POST['aftership_tracking_account']);
|
308 |
+
// $tracking_key = wc_clean($_POST['aftership_tracking_key']);
|
309 |
+
// $tracking_destination_country = wc_clean($_POST['aftership_tracking_destination_country']);
|
310 |
//
|
311 |
// // Update order data
|
312 |
update_post_meta($post_id, '_aftership_tracking_provider', $tracking_provider);
|
322 |
|
323 |
foreach ($this->aftership_fields as $field) {
|
324 |
if ($field['type'] == 'date') {
|
325 |
+
update_post_meta($post_id, '_' . $field['id'], wc_clean(strtotime($_POST[$field['id']])));
|
326 |
} else {
|
327 |
+
update_post_meta($post_id, '_' . $field['id'], wc_clean($_POST[$field['id']]));
|
328 |
}
|
329 |
}
|
330 |
}
|
561 |
*/
|
562 |
function email_display($order)
|
563 |
{
|
564 |
+
$this->display_tracking_info(get_order_id($order), true);
|
565 |
}
|
566 |
|
567 |
private function display_track_button($tracking_provider, $tracking_number, $required_fields_values)
|
api/class-aftership-api-orders.php
CHANGED
@@ -120,7 +120,7 @@ class AfterShip_API_Orders extends AfterShip_API_Resource
|
|
120 |
$order_post = get_post($id);
|
121 |
|
122 |
$order_data = array(
|
123 |
-
'id' => (
|
124 |
'order_number' => $order->get_order_number(),
|
125 |
'created_at' => $this->server->format_datetime($order_post->post_date_gmt),
|
126 |
'updated_at' => $this->server->format_datetime($order_post->post_modified_gmt),
|
@@ -144,30 +144,30 @@ class AfterShip_API_Orders extends AfterShip_API_Resource
|
|
144 |
// 'paid' => isset($order->paid_date),
|
145 |
// ),
|
146 |
'billing_address' => array(
|
147 |
-
'first_name' => $order
|
148 |
-
'last_name' => $order
|
149 |
-
'company' => $order
|
150 |
-
'address_1' => $order
|
151 |
-
'address_2' => $order
|
152 |
-
'city' => $order
|
153 |
-
'state' => $order
|
154 |
-
'postcode' => $order
|
155 |
-
'country' => $order
|
156 |
-
'email' => $order
|
157 |
-
'phone' => $order
|
158 |
),
|
159 |
'shipping_address' => array(
|
160 |
-
'first_name' => $order
|
161 |
-
'last_name' => $order
|
162 |
-
'company' => $order
|
163 |
-
'address_1' => $order
|
164 |
-
'address_2' => $order
|
165 |
-
'city' => $order
|
166 |
-
'state' => $order
|
167 |
-
'postcode' => $order
|
168 |
-
'country' => $order
|
169 |
),
|
170 |
-
'note' => $order->customer_note,
|
171 |
// 'customer_ip' => $order->customer_ip_address,
|
172 |
// 'customer_user_agent' => $order->customer_user_agent,
|
173 |
// 'customer_id' => $order->customer_user,
|
@@ -257,23 +257,25 @@ class AfterShip_API_Orders extends AfterShip_API_Resource
|
|
257 |
// $order_data['aftership']['woocommerce']['trackings'][] = $result;
|
258 |
|
259 |
$order_data['aftership']['woocommerce']['trackings'][] = array(
|
260 |
-
'tracking_provider' =>
|
261 |
-
'tracking_number' =>
|
262 |
-
'tracking_ship_date' =>
|
263 |
-
'tracking_postal_code' =>
|
264 |
-
'tracking_account_number' =>
|
265 |
-
|
266 |
-
|
267 |
);
|
268 |
}
|
269 |
if ($tn == NULL) {
|
270 |
// Handle old Shipping Tracking plugin
|
271 |
-
$tn =
|
272 |
if ($tn == NULL) {
|
273 |
// Handle new Shipping Tracking plugin version higher than 1.6.4
|
|
|
|
|
274 |
$order_data['aftership']['woocommerce']['trackings'][] = array(
|
275 |
-
'tracking_number' =>
|
276 |
-
'tracking_provider' =>
|
277 |
);
|
278 |
} else {
|
279 |
$order_data['aftership']['woocommerce']['trackings'][] = array(
|
120 |
$order_post = get_post($id);
|
121 |
|
122 |
$order_data = array(
|
123 |
+
'id' => get_order_id($order),
|
124 |
'order_number' => $order->get_order_number(),
|
125 |
'created_at' => $this->server->format_datetime($order_post->post_date_gmt),
|
126 |
'updated_at' => $this->server->format_datetime($order_post->post_modified_gmt),
|
144 |
// 'paid' => isset($order->paid_date),
|
145 |
// ),
|
146 |
'billing_address' => array(
|
147 |
+
'first_name' => order_post_meta_getter($order, 'billing_first_name'),
|
148 |
+
'last_name' => order_post_meta_getter($order, 'billing_last_name'),
|
149 |
+
'company' => order_post_meta_getter($order, 'billing_company'),
|
150 |
+
'address_1' => order_post_meta_getter($order, 'billing_address_1'),
|
151 |
+
'address_2' => order_post_meta_getter($order, 'billing_address_2'),
|
152 |
+
'city' => order_post_meta_getter($order, 'billing_city'),
|
153 |
+
'state' => order_post_meta_getter($order, 'billing_state'),
|
154 |
+
'postcode' => order_post_meta_getter($order, 'billing_postcode'),
|
155 |
+
'country' => order_post_meta_getter($order,'billing_country'),
|
156 |
+
'email' => order_post_meta_getter($order,'billing_email'),
|
157 |
+
'phone' => order_post_meta_getter($order,'billing_phone'),
|
158 |
),
|
159 |
'shipping_address' => array(
|
160 |
+
'first_name' => order_post_meta_getter($order,'shipping_first_name'),
|
161 |
+
'last_name' => order_post_meta_getter($order,'shipping_last_name'),
|
162 |
+
'company' => order_post_meta_getter($order,'shipping_company'),
|
163 |
+
'address_1' => order_post_meta_getter($order,'shipping_address_1'),
|
164 |
+
'address_2' => order_post_meta_getter($order,'shipping_address_2'),
|
165 |
+
'city' => order_post_meta_getter($order,'shipping_city'),
|
166 |
+
'state' => order_post_meta_getter($order,'shipping_state'),
|
167 |
+
'postcode' => order_post_meta_getter($order,'shipping_postcode'),
|
168 |
+
'country' => order_post_meta_getter($order,'shipping_country'),
|
169 |
),
|
170 |
+
'note' => (method_exists($order, 'get_customer_note'))? $order->get_customer_note() : $order->customer_note,
|
171 |
// 'customer_ip' => $order->customer_ip_address,
|
172 |
// 'customer_user_agent' => $order->customer_user_agent,
|
173 |
// 'customer_id' => $order->customer_user,
|
257 |
// $order_data['aftership']['woocommerce']['trackings'][] = $result;
|
258 |
|
259 |
$order_data['aftership']['woocommerce']['trackings'][] = array(
|
260 |
+
'tracking_provider' => order_post_meta_getter($order, 'aftership_tracking_provider'),
|
261 |
+
'tracking_number' => order_post_meta_getter($order, 'aftership_tracking_number'),
|
262 |
+
'tracking_ship_date' => order_post_meta_getter($order, 'aftership_tracking_shipdate'),
|
263 |
+
'tracking_postal_code' => order_post_meta_getter($order, 'aftership_tracking_postal'),
|
264 |
+
'tracking_account_number' => order_post_meta_getter($order, 'aftership_tracking_account'),
|
265 |
+
'tracking_key' => order_post_meta_getter($order, 'aftership_tracking_key'),
|
266 |
+
'tracking_destination_country' => order_post_meta_getter($order, 'aftership_tracking_destination_country'),
|
267 |
);
|
268 |
}
|
269 |
if ($tn == NULL) {
|
270 |
// Handle old Shipping Tracking plugin
|
271 |
+
$tn = order_post_meta_getter($order, 'tracking_number');
|
272 |
if ($tn == NULL) {
|
273 |
// Handle new Shipping Tracking plugin version higher than 1.6.4
|
274 |
+
$tracking_items = order_post_meta_getter($order, 'wc_shipment_tracking_items')[0];
|
275 |
+
|
276 |
$order_data['aftership']['woocommerce']['trackings'][] = array(
|
277 |
+
'tracking_number' => $tracking_items['tracking_number'],
|
278 |
+
'tracking_provider' => $tracking_items['custom_tracking_provider']
|
279 |
);
|
280 |
} else {
|
281 |
$order_data['aftership']['woocommerce']['trackings'][] = array(
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.aftership.com/
|
|
4 |
Tags: shipping, tracking, ups, usps, fedex, dhl, tnt, dpd, post, shipment, woocommerce, tracking number, aftership, package tracking, fulfilment, tracking link, carrier, courier, woo commerce, woocommerce shipment tracking, shipping details plugin, widget, shipstation, track, package
|
5 |
Requires at least: 2.9
|
6 |
Tested up to: 4.2.2
|
7 |
-
Stable tag: 1.7.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
4 |
Tags: shipping, tracking, ups, usps, fedex, dhl, tnt, dpd, post, shipment, woocommerce, tracking number, aftership, package tracking, fulfilment, tracking link, carrier, courier, woo commerce, woocommerce shipment tracking, shipping details plugin, widget, shipstation, track, package
|
5 |
Requires at least: 2.9
|
6 |
Tested up to: 4.2.2
|
7 |
+
Stable tag: 1.7.4
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|