Changeset 3356610
- Timestamp:
- 09/05/2025 10:39:36 AM (6 months ago)
- Location:
- cedcommerce-integration-for-aliexpress/trunk
- Files:
-
- 4 edited
-
README.txt (modified) (1 diff)
-
admin/class-cedcommerce-integration-for-aliexpress-admin.php (modified) (4 diffs)
-
cedcommerce-integration-for-aliexpress.php (modified) (2 diffs)
-
includes/class-cedcommerce-integration-for-aliexpress.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
cedcommerce-integration-for-aliexpress/trunk/README.txt
r3338813 r3356610 107 107 * Revamped plugin user interface for better usability 108 108 * Fixed various bugs and performance issues 109 110 = 2.0.1 = 111 * Improve Stability 112 -
cedcommerce-integration-for-aliexpress/trunk/admin/class-cedcommerce-integration-for-aliexpress-admin.php
r3338830 r3356610 427 427 * Check if HPOS is enabled 428 428 * 429 * @return void429 * @return bool 430 430 */ 431 431 public function ced_aliexpress_is_hpos_enable() … … 444 444 { 445 445 446 if (!$post) { 446 $order = false; 447 if ($post instanceof WP_Post && get_post_type($post) === 'shop_order') { 448 $order = wc_get_order($post->ID); 449 } elseif ($post instanceof WC_Order) { 450 $order = $post; 451 } 452 if (!$order) { 453 return; 454 } 455 $marketplace = $order->get_meta('_ced_marketplace'); 456 $order_type = $order->get_meta('_ced_aliexpress_order_type'); 457 458 if ('aliexpress' === strtolower($marketplace) && 'dbs' === $order_type) { 459 add_meta_box( 460 'ced_aliexpress_manage_orders_metabox', 461 __('Manage Aliexpress Orders', 'cedcommerce-integration-for-aliexpress') . 462 wc_help_tip(__('Please save tracking information of order.', 'cedcommerce-integration-for-aliexpress')), 463 [$this, 'ced_aliexpress_render_order_metabox'], 464 wc_get_page_screen_id('shop-order'), 465 'advanced', 466 'high' 467 ); 468 } 469 } 470 471 /** 472 * Function ced_aliexpress_render_order_metabox. 473 * 474 * @since 1.0.0 475 * @return void 476 */ 477 public function ced_aliexpress_render_order_metabox($post) 478 { 479 $order = false; 480 if ($post instanceof WP_Post && get_post_type($post) === 'shop_order') { 481 $order = wc_get_order($post->ID); 482 } elseif ($post instanceof WC_Order) { 483 $order = $post; 484 } 485 if (!$order) { 447 486 return; 448 487 } 449 $order = ($post instanceof WP_Post) ? wc_get_order($post->ID) : $post; 450 $screen = $this->ced_aliexpress_is_hpos_enable() ? wc_get_page_screen_id('shop-order') : 'shop_order'; 451 452 if (empty($order)) { 453 return; 454 } 455 456 $marketplace = "shop_order" == $screen ? get_post_meta($post->ID, '_ced_marketplace', true) : $order->get_meta('_ced_marketplace'); 457 $order_type = "shop_order" == $screen ? get_post_meta($post->ID, '_ced_aliexpress_order_type', true) : $order->get_meta('_ced_aliexpress_order_type'); 488 $tracking_company = $order->get_meta('_trackingCompany'); 489 $tracking_number = $order->get_meta('_trackingNumber'); 490 $tracking_errors = $order->get_meta('tracking_errors'); 491 $marketplace = $order->get_meta('_ced_marketplace'); 492 $order_type = $order->get_meta('_ced_aliexpress_order_type'); 458 493 459 494 if (('aliexpress' === strtolower($marketplace)) && ('dbs' === $order_type)) { 460 add_meta_box( 461 'ced_aliexpress_manage_orders_metabox', 462 __('Manage Aliexpress Orders', 'cedcommerce-integration-for-aliexpress') . wc_help_tip(__('Please save tracking information of order.', 'cedcommerce-integration-for-aliexpress')), 463 array($this, 'ced_aliexpress_render_order_metabox'), 464 $screen, 465 'advanced', 466 'high' 467 ); 468 } 469 } 470 471 /** 472 * Function ced_aliexpress_render_order_metabox. 473 * 474 * @since 1.0.0 475 * @return void 476 */ 477 public function ced_aliexpress_render_order_metabox($post) 478 { 479 480 $order = ($post instanceof WP_Post) ? wc_get_order($post->ID) : $post; 481 if (!empty($order)) { 482 $order_id = $order->get_id(); 483 if (!is_null($order_id)) { 484 485 if ($this->ced_aliexpress_is_hpos_enable()) { 486 487 $tracking_company = $order->get_meta('_trackingCompany'); 488 $tracking_number = $order->get_meta('_trackingNumber'); 489 $tracking_errors = $order->get_meta('tracking_errors'); 490 $marketplace = $order->get_meta('_ced_marketplace'); 491 $order_type = $order->get_meta('_ced_aliexpress_order_type'); 492 493 494 } else { 495 496 $tracking_company = get_post_meta($order_id, '_trackingCompany', true); 497 $tracking_number = get_post_meta($order_id, '_trackingNumber', true); 498 $tracking_errors = get_post_meta($order_id, 'tracking_errors', true); 499 $marketplace = get_post_meta($order_id, '_ced_marketplace', true); 500 $order_type = get_post_meta($order_id, '_ced_aliexpress_order_type', true); 501 } 502 503 if (('aliexpress' === strtolower($marketplace)) && ('dbs' === $order_type)) { 504 $tracking_company = !empty($tracking_company) ? $tracking_company : ''; 505 $tracking_number = !empty($tracking_number) ? $tracking_number : ''; 506 $provider = get_option('ced_aliexpress_shipping_carriers'); 507 ?> 508 <table class="ced_bol_submit_shipment"> 509 <?php 510 if (!empty($tracking_errors)) { 511 echo '<tr><td>There are following errors while saving the tracking details :<ul style="list-style:square">'; 512 foreach ($tracking_errors as $k => $v) { 513 echo '<li><span style="color:red;">' . esc_html($v) . '</span></li>'; 495 $tracking_company = !empty($tracking_company) ? $tracking_company : ''; 496 $tracking_number = !empty($tracking_number) ? $tracking_number : ''; 497 $provider = get_option('ced_aliexpress_shipping_carriers'); 498 ?> 499 <table class="ced_bol_submit_shipment"> 500 <?php 501 if (!empty($tracking_errors)) { 502 echo '<tr><td>There are following errors while saving the tracking details :<ul style="list-style:square">'; 503 foreach ($tracking_errors as $k => $v) { 504 echo '<li><span style="color:red;">' . esc_html($v) . '</span></li>'; 505 } 506 echo '</ul></td></tr>'; 507 } 508 ?> 509 <?php wp_nonce_field('ced_aliexpress_order_nonce', 'ced_aliexpress_order_nonce'); ?> 510 <tr> 511 <td style="color:#444 !important"> 512 <?php esc_html_e('Shipping Provider', 'cedcommerce-integration-for-aliexpress'); ?></td> 513 <td style="color:#444 !important"> 514 <select name="trackingCompany"> 515 <option value=""><?php esc_html_e('Select', 'cedcommerce-integration-for-aliexpress'); ?></option> 516 <?php 517 foreach ($provider as $key => $value) { 518 if ((string) $key === (string) $tracking_company) { 519 $ship_class = 'selected'; 520 } else { 521 $ship_class = ''; 522 } 523 echo "<option value='" . esc_attr($key) . "' " . esc_attr($ship_class) . '>' . esc_attr($value) . '</option>'; 514 524 } 515 echo '</ul></td></tr>'; 516 } 517 ?> 518 <?php wp_nonce_field('ced_aliexpress_order_nonce', 'ced_aliexpress_order_nonce'); ?> 519 <tr> 520 <td style="color:#444 !important"> 521 <?php esc_html_e('Shipping Provider', 'cedcommerce-integration-for-aliexpress'); ?></td> 522 <td style="color:#444 !important"> 523 <select name="trackingCompany"> 524 <option value=""><?php esc_html_e('Select', 'cedcommerce-integration-for-aliexpress'); ?></option> 525 <?php 526 foreach ($provider as $key => $value) { 527 if ((string) $key === (string) $tracking_company) { 528 $ship_class = 'selected'; 529 } else { 530 $ship_class = ''; 531 } 532 echo "<option value='" . esc_attr($key) . "' " . esc_attr($ship_class) . '>' . esc_attr($value) . '</option>'; 533 } 534 ?> 535 </select> 536 </td> 537 </tr> 538 <tr> 539 <td style="color:#444 !important"> 540 <?php esc_html_e('Tracking Number', 'cedcommerce-integration-for-aliexpress'); ?></td> 541 <td style="color:#444 !important"><input type='text' name='trackingNumber' id='trackingNumber' 542 value='<?php echo esc_html($tracking_number); ?>'></td> 543 </tr> 544 </table> 545 <?php 546 } 547 } 525 ?> 526 </select> 527 </td> 528 </tr> 529 <tr> 530 <td style="color:#444 !important"> 531 <?php esc_html_e('Tracking Number', 'cedcommerce-integration-for-aliexpress'); ?></td> 532 <td style="color:#444 !important"><input type='text' name='trackingNumber' id='trackingNumber' 533 value='<?php echo esc_html($tracking_number); ?>'></td> 534 </tr> 535 </table> 536 <?php 548 537 } 549 538 } … … 601 590 public function ced_aliexpress_save_order_metadata($post_id, $post) 602 591 { 603 604 592 if (!$post_id) { 605 593 return; 606 594 } 607 608 $order = ($post instanceof WP_Post) ? wc_get_order($post_id) : $post; 609 610 if (empty($order)) { 595 $order = wc_get_order($post_id); 596 if (!$order || !is_a($order, 'WC_Order')) { 611 597 return; 612 598 } 613 614 599 if (!empty($_POST['ced_aliexpress_order_nonce'])) { 615 616 600 $ced_aliexpress_order_nonce = sanitize_text_field(wp_unslash($_POST['ced_aliexpress_order_nonce'])); 617 618 if (wp_verify_nonce($ced_aliexpress_order_nonce, 'ced_aliexpress_order_nonce') && $this->ced_aliexpress_is_hpos_enable()) { 619 601 if (wp_verify_nonce($ced_aliexpress_order_nonce, 'ced_aliexpress_order_nonce')) { 602 $updated = false; 620 603 if (!empty($_POST['trackingCompany'])) { 621 $order->update_meta_data('_trackingCompany', sanitize_text_field(wp_unslash($_POST['trackingCompany']))); 604 $order->update_meta_data( 605 '_trackingCompany', 606 sanitize_text_field(wp_unslash($_POST['trackingCompany'])) 607 ); 608 $updated = true; 622 609 } 623 610 if (!empty($_POST['trackingNumber'])) { 624 $order->update_meta_data('_trackingNumber', sanitize_text_field(wp_unslash($_POST['trackingNumber']))); 611 $order->update_meta_data( 612 '_trackingNumber', 613 sanitize_text_field(wp_unslash($_POST['trackingNumber'])) 614 ); 615 $updated = true; 616 } 617 if ($updated) { 618 $order->save(); 625 619 } 626 620 } … … 658 652 public function ced_aliexpress_column_order_section_callback($column, $post_id) 659 653 { 660 661 654 $order = wc_get_order($post_id); 655 if (! $order instanceof WC_Order) { 656 return; 657 } 662 658 switch ($column) { 663 659 case 'order_type': 664 // Get custom post meta data. 665 if ($this->ced_aliexpress_is_hpos_enable()) { 666 $order = ($post_id instanceof WP_Post) ? wc_get_order($post_id->ID) : $post_id; 667 $order_type = $order->get_meta('_ced_aliexpress_order_type'); 668 } else { 669 $order_type = get_post_meta($post_id, '_ced_aliexpress_order_type', true); 670 } 660 $order_type = $order->get_meta('_ced_aliexpress_order_type'); 671 661 if (!empty($order_type)) { 672 662 echo esc_html(strtoupper($order_type)); 673 } else {674 echo '-';675 663 } 676 664 break; 665 677 666 case 'marketplace': 678 // Get custom post meta data. 679 if ($this->ced_aliexpress_is_hpos_enable()) { 680 $order = ($post_id instanceof WP_Post) ? wc_get_order($post_id->ID) : $post_id; 681 $ced_marketplace = $order->get_meta('_ced_marketplace'); 682 } else { 683 $ced_marketplace = get_post_meta($post_id, '_ced_marketplace', true); 684 } 685 if (!empty($ced_marketplace)) { 686 if (('aliexpress' === strtolower($ced_marketplace))) { 687 echo esc_html('Aliexpress'); 688 } 689 } else { 690 echo '-'; 667 $ced_marketplace = $order->get_meta('_ced_marketplace'); 668 if (!empty($ced_marketplace) && 'aliexpress' === strtolower($ced_marketplace)) { 669 echo esc_html__('Aliexpress', 'cedcommerce-integration-for-aliexpress'); 691 670 } 692 671 break; -
cedcommerce-integration-for-aliexpress/trunk/cedcommerce-integration-for-aliexpress.php
r3338830 r3356610 17 17 * Plugin URI: https://woocommerce.com/vendor/cedcommerce/ 18 18 * Description: CedCommerce Integration for AliExpress allows merchants to list their products on Aliexpress marketplaces and manage all the orders from their WooCommerce store. 19 * Version: 2.0. 019 * Version: 2.0.1 20 20 * Author: CedCommerce 21 21 * Author URI: https://cedcommerce.com … … 35 35 * Rename this for your plugin and update it as you release new versions. 36 36 */ 37 define( 'CEDCOMMERCE_INTEGRATION_FOR_ALIEXPRESS_VERSION', '2.0. 0' );37 define( 'CEDCOMMERCE_INTEGRATION_FOR_ALIEXPRESS_VERSION', '2.0.1' ); 38 38 define( 'CEDCOMMERCE_INTEGRATION_FOR_ALIEXPRESS_PREFIX', 'ced_aliexpress_integration' ); 39 39 define( 'CEDCOMMERCE_INTEGRATION_FOR_ALIEXPRESS_DIRPATH', plugin_dir_path( __FILE__ ) ); -
cedcommerce-integration-for-aliexpress/trunk/includes/class-cedcommerce-integration-for-aliexpress.php
r3338830 r3356610 151 151 $this->loader->add_action( 'woocommerce_variation_options_pricing', $plugin_admin, 'ced_aliexpress_add_custom_field_to_variations', 10, 3 ); 152 152 $this->loader->add_action( 'woocommerce_save_product_variation', $plugin_admin, 'ced_aliexpress_save_custom_field_variations', 10, 2 ); 153 $this->loader->add_action( 'save_post', $plugin_admin, 'ced_aliexpress_save_metadata', 24, 2 ); 154 $this->loader->add_action( 'woocommerce_update_order', $plugin_admin, 'ced_aliexpress_save_order_metadata', 24, 2 ); 153 //$this->loader->add_action( 'save_post', $plugin_admin, 'ced_aliexpress_save_metadata', 24, 2 ); 154 //$this->loader->add_action( 'woocommerce_update_order', $plugin_admin, 'ced_aliexpress_save_order_metadata', 24, 2 ); 155 $this->loader->add_action( 'woocommerce_process_shop_order_meta', $plugin_admin, 'ced_aliexpress_save_order_metadata', 24, 2 ); 155 156 $this->loader->add_action( 'add_meta_boxes', $plugin_admin, 'ced_aliexpress_add_order_metabox', 24 , 2 ); 156 157 $this->loader->add_filter( 'manage_edit-shop_order_columns', $plugin_admin, 'ced_aliexpress_add_column_order_section', 20 );
Note: See TracChangeset
for help on using the changeset viewer.