راهنمای اتصال وب سرویس اداره پست ای بازار

برای اتصال به وب سرویس اداره پست باید یوزر و پسورد رو از اداره پست دریافت کرده باشید و پنلتون فعال باشه .
برای اتصال از قطعه کد زیر می تونید استفاده کنید :

    $username = 'your_username';
    $password = 'your_password';
 
    //Create a web service proxy using SoapClient
    $client = new SoapClient('http://svc.ebazaar-post.ir/EshopService.svc?WSDL');
    $client->soap_defencoding = 'UTF-8';
    $client->decode_utf8 = false;
 

 

کد استان های مورد استفاده در وب سرویس اداره پست به صورت آرایه :

$state_code=array(
                 //البرز
                'ABZ' => '31',
                
                //اردبیل
				'ADL' => '15',
				
				//آذربایجان شرقی
				'EAZ' => '3',
			
				//آذربایجان غربی
				'WAZ' => '16',
				
				//بوشهر
				'BHR' => '21',
				
				//چهارمحال و بختیاری
				'CHB' => '21',
				
				//فارس
				'FRS' => '5',
				
				//گیلان
				'GIL' => '2',
				
				//گلستان
				'GLS' => '14',
				
				//همدان
				'HDN' => '17',
				
				//هرمزگان
				'HRZ' => '23',
				
				//ایلام
				'ILM' => '27',
				
				// اصفهان
				'ESF' => '6',
				
				// کرمان
				'KRN' => '22',
				
				//کرمانشاه
				'KRH' => '19',
				
				//خراسان شمالی
				'NKH' => '29',
				
				//خراسان رضوی
				'RKH' => '7',
				
				//خراسان جنوبی
				'SKH' => '30',
				
				//خوزستان
				'KHZ' => '4',
				
				//کهگیلویه و بویراحمد
				'KBD' => '28',
				
				//کردستان
				'KRD' => '18',
				
				//لرستان
				'LRS' => '20',
				
				//مرکزی
				'MKZ' => '11',
				
				//مازندران
				'MZN' => '13',
				
				//قزوین
				'GZN' => '8',
				
				//قم
				'QHM' => '10',
				
				//سمنان
				'SMN' => '9',
				
				//سیستان و بلوچستان
				'SBN' => '26',
				
				//تهران
				'THR' => '1',
				
				//یزد
				'YZD' => '25',
				
				//زنجان
				'ZJN' => '12',
); 

در ووکامرس به صورت پیش فرض برای استان و شهرهای ایران کدی درج و ذخیره نمیشه . اما میشه بر اساس نام اختصاصی کوتاه هر استان یک آرایه نوشت و کد اون استان رو به دست اورد .

// کد استان  رو پیدا می کنیم 
$statecode=$state_code[$order_shipping_state];

// شهرهای اون استان رو به همراه کد شهرها از وب سرویس اداره پست دریافت می کنیم
$cities=$client->GetCities(['username' => $username,'password'=>$password,'stateId'=>$statecode]);

// کد شهر سفارش رو با کد شهر دریافتی از وب سرویس مطابقت میدیم تا کد شهر مورد نظر خودمون رو به دست بیاریم
$citiy_name=$order_shipping_city;
$city_code = null;
 foreach($cities as $data=>$struct) {
          foreach($struct as $data=>$value) { 
                     foreach($value as $data2) {
                                 //print_r($data2);
      
                               if ( $citiy_name == $data2->Name) {
                                                $city_code= $data2->Code;
                                                  // echo $city_code;
                                             break;   
                                                                                       }
                                                            }
                                                      }
                                                   }

در مرحله بعد با استفاده از کد استان، تمام شهرهای اون استان از وب سرویس اداره پست فراخوانی میشه و با نام شهر انتخاب شده به صورت یک حلقه مقایسه میشه و در صورت برقرار این شرط، کد شهر در یک متغیر ذخیره میشه تا مجدد برای ثبت مرسوله برای وب سرویس اداره پست استفاده بشه.

 

.
این پست به صورت دوره ای آپدیت خواهد شد و اطلاعات جدید در این پست منتشر خواهد شد

  1. اولین نفری باشید که دیدگاه خود را ثبت می کند!
  1. No trackbacks yet.
« افزونه برای خروجی اکسل برای سفارشات ووکامرس
راهنمای اضافه کردن فونت به mpdf 7 »