WebService를 사용하여 하나의 제품에 대한 PrestaShop 가격을 업데이트했습니다.PrestaShop WebService - 다양한 제품의 가격 업데이트
<html><head><title>CRUD Data Transfer - Update example</title></head><body>
<?php
// Here we define constants /!\ You need to replace this parameters
define('DEBUG', true);
define('PS_SHOP_PATH', 'https://my.domain.com');
define('ID_PRODUCT', 1);
define('PS_WS_AUTH_KEY', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX');
require_once('./PSWebServiceLibrary.php');
@ini_set('display_errors', 'on');
try
{
$webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG);
$opt = array('resource' => 'products');
$opt['id']=ID_PRODUCT;
$xml = $webService->get($opt);
echo "Successfully recived data.";
/* List of nodes that can't modify
*
* - "manufacturer_name"
* - "position_in_category"
* - "quantity"
* - "type"
*/
unset($xml->children()->children()->manufacturer_name);
unset($xml->children()->children()->position_in_category);
unset($xml->children()->children()->quantity);
unset($xml->children()->children()->type);
$xml->children()->children()->price = 111.0; // <-- new price!
//Load new data to query generator
$opt['putXml']=$xml->asXML();
$xml = $webService->edit($opt);
// if WebService don't throw an exception the action worked well and we don't show the following message
echo "Successfully updated.";
}
catch (PrestaShopWebserviceException $ex)
{
// Here we are dealing with errors
$trace = $ex->getTrace();
if ($trace[0]['args'][0] == 404) echo 'Bad ID';
else if ($trace[0]['args'][0] == 401) echo 'Bad auth key';
else echo 'Other error<br />'.$ex->getMessage();
}
?>
</body></html>
동일한 방법을 사용할 수 있지만 MySQL 테이블의 모든 제품에 대해 어떻게 할 수 있습니까?
ID 키가 Source_ID 인 MySQL 테이블에 모든 제품이 있습니다.
감사합니다.
감사
없음 ?? : –