2017-05-23 8 views
0

고객 주소를 검색하고 싶습니다. Prestashop - 웹 서비스를 통해 고객 주소 가져 오기

는 고객 데이터를 반환 내가 가지고있는 코드 :

$webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG); $xml = $webService->get(array('url' => 'http://example.com/api/customers/104')); $resources = $xml->children()->children();

그리고 이것은 결과입니다

<?xml version="1.0" encoding="UTF-8"?> 
<prestashop xmlns:xlink="http://www.w3.org/1999/xlink"> 
<customer> 
    <id><![CDATA[104]]></id> 
    <id_default_group xlink:href="http://example.com/api/groups/3"><![CDATA[3]]></id_default_group> 
    <id_lang xlink:href="http://example.com/api/languages/2"><![CDATA[2]]></id_lang> 
    <newsletter_date_add><![CDATA[2016-01-31 23:32:17]]></newsletter_date_add> 
    <ip_registration_newsletter><![CDATA[46.245.17.126]]></ip_registration_newsletter> 
    <last_passwd_gen><![CDATA[2016-01-31 17:32:17]]></last_passwd_gen> 
    <secure_key><![CDATA[15423d30bac893c43344749c515c45f7]]></secure_key> 
    <deleted><![CDATA[0]]></deleted> 
    <passwd><![CDATA[02b5555e9ca7c2ea3588dae0a5e1d950]]></passwd> 
    <lastname><![CDATA[اصالتی]]></lastname> 
    <firstname><![CDATA[جاوید]]></firstname> 
    <email><![CDATA[[email protected]]]></email> 
    <id_gender><![CDATA[0]]></id_gender> 
    <birthday><![CDATA[1981-08-11]]></birthday> 
    <newsletter><![CDATA[1]]></newsletter> 
    <optin><![CDATA[0]]></optin> 
    <website></website> 
    <company><![CDATA[1376709392]]></company> 
    <siret></siret> 
    <ape></ape> 
    <outstanding_allow_amount><![CDATA[0.000000]]></outstanding_allow_amount> 
    <show_public_prices><![CDATA[0]]></show_public_prices> 
    <id_risk><![CDATA[0]]></id_risk> 
    <max_payment_days><![CDATA[0]]></max_payment_days> 
    <active><![CDATA[1]]></active> 
    <note></note> 
    <is_guest><![CDATA[0]]></is_guest> 
    <id_shop><![CDATA[1]]></id_shop> 
    <id_shop_group><![CDATA[1]]></id_shop_group> 
    <date_add><![CDATA[2016-01-31 23:32:17]]></date_add> 
    <date_upd><![CDATA[2016-01-31 23:54:54]]></date_upd> 
<associations> 
<groups nodeType="group" api="groups"> 

</groups> 
</associations> 
</customer> 

그것은 주소를 반환하지 않습니다.

어떻게 webservice를 통해 고객 주소를 반환 할 수 있습니까?

답변

0

PrestaShop에 더 많은 주소가 있어야하므로이 주소를 두 단계로 검색해야합니다.
먼저 고객 ID를 검색해야합니다 (고객 ID가 이미 있고 귀하의 사례에 이미 포함되어 있다고 가정합니다). 그런 다음 해당 고객과 관련된 주소입니다. 당신이 URL을 통해 검색 할 경우

당신은 '필터'기능을 사용할 수있다 : 즉 고객의 ID가와는 활성 주소를 검색 할 삭제 id_customer 우리는 두 개의 매개 변수가
http://example.com/api/addresses/?filter[id_customer]=[104]&filter[deleted]=[0]

그 당신이 (즉, 고객의) 모든 주소 목록이 후로,

$opt = array(
    'resource'   =>'addresses', 
    'filter[id_customer]' => '[104]', 
    'filter[deleted]' => '[0]' 
); 

:

그렇지 않으면 당신은 $opt 배열을 사용한다당신은 주소 id (s)를 얻고 그 주소의 모든 정보를 검색 할 수 있습니다.