Χρήσιμα filters

Διαφορετικό Courier Center billing code για κάθε admin ID

Με αυτό τον τρόπο μπορείτε να αντιστοιχίσετε σε κάθε admin να εκδίδει vouchers με διαφορετικό billing code

add_action('admin_init', 'iben_ccenter_add_custom_acccounts');
  
	function iben_ccenter_add_custom_acccounts(){
  
		// REQUIRE Courier Center V1.3.0 and above
		if ( ! class_exists( 'Iben_Woo_Ccenter_Admin_Woo' ) ) return;
		if ( ! is_admin() ) return;
		if ( !current_user_can( 'edit_shop_orders' ) ) return;

		//display admin bar which account is assigned
		add_filter( 'iben_ccenter_filter_display_multiaccount_message', '__return_true' );
		//display account column in vouchers list
		add_filter( 'iben_ccenter_filter_vouchers_display_account_column', '__return_true' );		
	

		$current_id = get_current_user_id();
		
		// ADMIN ID	
		if ($current_id == 27){	
			// ΧΡΗΣΤΗΣ		
			add_filter( 'iben_ccenter_filter_main_settings_user_alias', function($default_value ) {
				return 'xxxxxxxxxxxxx';
			}, 10);
			// ΚΩΔΙΚΟΣ			
			add_filter( 'iben_ccenter_filter_main_settings_credential_value', function($default_value ) {
				return 'xxxxxxxxxxxxx';
			}, 10);	
			
			// API KEY
			add_filter( 'iben_ccenter_filter_main_settings_apikey', function($default_value ) {
				return 'xxxxxxxxxxxxx';
			}, 10);	
			
			//billing_code
			add_filter( 'iben_ccenter_filter_main_settings_billtocode', function($default_value ) {
				return '100-2345-xxxx';
			}, 10);											

		}

	}

Εμφάνιση σύνολο αντικαταβολών στην λίστα των vouchers

add_filter( 'iben_ccenter_filter_listvouchers_displaycod_all', '__return_true' );
add_filter( 'iben_ccenter_filter_listvouchers_displaycod_delivered', '__return_true' );
add_filter( 'iben_ccenter_filter_listvouchers_displaycod_undelivered', '__return_true' );

Ορισμός διαφορετικού αποστολέα

Εαν θέλετε να αλλάξετε τα στοιχεία του αποστολέα στα vouchers

Απαιτείται έκδοση >= v2.2.0

add_filter('iben_ccenter_filter_api_shipment_body', 'iben_ccenter_add_sender_to_shipment_body');

function iben_ccenter_add_sender_to_shipment_body($send_data) {
    // Check if $send_data is an array and if not, initialize it
    if (!is_array($send_data)) {
        $send_data = [];
    }

    // Add the Sender information
    $send_data["Shipper"] = [
        "CompanyName" => 'test', //ΥΠΟΧΡΕΩΤΙΚΟ
	"ContactName" =>'iben', //ΠΡΟΑΙΡΕΤΙΚΟ
	"Address" => 'Address here', //ΥΠΟΧΡΕΩΤΙΚΟ
	"City" => 'City here', //ΥΠΟΧΡΕΩΤΙΚΟ
	"ZipCode" => '32100', //ΥΠΟΧΡΕΩΤΙΚΟ
	"Phone1" => '21000000000', //ΠΡΟΑΙΡΕΤΙΚΟ
	"Country" => 'GR' //ΥΠΟΧΡΕΩΤΙΚΟ	
    ];

    return $send_data;
}

Εμφάνιση πολλαπλών υποκωδικών (billing code) στην έκδοση voucher

Με αυτή την προσθήκη θα μπορείτε να επιλέγετε με ποιό υποκωδικό θα δημιουργηθεί το voucher

Απαιτείται η έκδοση >= 2.3.0

add_filter('iben_ccenter_filter_billtocode_order_metabox_enable_selections', '__return_true');

add_filter( 'iben_ccenter_order_metabox_billtocode_selections', 'iben_ccenter_order_metabox_billtocode_selections_function', 10, 1 );
function iben_ccenter_order_metabox_billtocode_selections_function( $default_options ) {
  $dynamic_options = array(
    '100-120-0004' => 'Αποθήκη 1',
	'100-120-0005' => 'Αποθήκη 2'
  );
  $options = array_merge( $default_options, $dynamic_options );

  return $options;
}

Εμφάνιση πολλαπλών υποκωδικών (shipper code) στην έκδοση voucher

Απαιτείται η έκδοση >= 2.4.0

add_filter('iben_ccenter_filter_billtocode_order_metabox', 'iben_ccenter_bill_tocode_def');

function iben_ccenter_bill_tocode_def(){
	return '100-xxxx-xxx1';
}

add_filter('iben_ccenter_filter_shippercode_order_metabox_enable_selections', '__return_true');
add_filter( 'iben_ccenter_order_metabox_shippercode_selections', 'iben_ccenter_order_metabox_shippercode_selections_function', 10, 1 );

function iben_ccenter_order_metabox_shippercode_selections_function( $default_options ) {
  $dynamic_options = array(
    '100-xxxx-xxx1' => 'κεντρικό',
    '100-xxxx-xxx2' => 'Θεσσαλονικη',
    '100-xxxx-xxx2' => 'Αθηνα'
  );
  $options = array_merge( $default_options, $dynamic_options );

  return $options;
}

Εμφάνιση κωδικών SKU στa σχόλια του voucher

//works for automatic actions too below line
add_filter('iben_ccenter_filter_combine_comments_metafield_order', 'iben_ccenter_display_products_in_comments', 10, 2 );
add_filter('iben_ccenter_filter_comments_order_metabox', 'iben_ccenter_display_products_in_comments', 10, 2 );
function iben_ccenter_display_products_in_comments($comments, $args){
    
    $order = wc_get_order($args['order_id']);

    if (!is_object($order)){
        return;
    }

    $export = '';

    if ($order->get_items()){
        $count = count($order->get_items());
        $index = 0;
        foreach( $order->get_items() as $item_id => $product_item ){
            $index++;
            $product = $product_item->get_product();
            $export .= $product->get_sku().($index == $count ? '' : ', ');
        }
    }

    // Return only product SKUs
    // return $export;    
    // Εμφάνιση σχόλια πελάτη + προιόντα
    return $comments.' '.$export;
}

Last updated