添加产品prestashop webservice。这么困难?

时间:2013-11-13 15:58:55

标签: web-services prestashop-1.5

我正在搜索教程或文档,其中解释了Prestashop(v1.5.6.0)的Web服务使用。 我想简单地添加或编辑(更新)产品。 没有教程干净或有关使用prestashop的api的例子。 你能帮我吗?

例如,我想添加对象a:

define('PS_SHOP_PATH', 'http://localhost/myshop'); // Root path of your PrestaShop store                        
define('PS_WS_AUTH_KEY', '****'); // Auth key (Get it in your Back Office)
require_once('api/PSWebServiceLibrary.php');

$webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG);
$opt = array('resource' => 'products');

现在,我如何设置新对象的值?在示例中,您只能插入所需的值。 你能帮帮我吗?

还有更新吗?

拜托,没有链接我的Prestashop文档,我已经阅读过了,我正在寻求你的帮助。 谢谢,并为我糟糕的英语辩解。

1 个答案:

答案 0 :(得分:3)

以下是官方文档的link。您将找到所需的所有信息。

基本上,您需要创建一个表示您想要PUT的对象的XML。

假设您想要创建一个新类别。

首先,您需要获取架构:

$xml = $webService->get(array('url' => PS_SHOP_PATH.'/api/categories?schema=blank'));

这是这样的:

<prestashop>
    <category>
    </category>
</prestashop>

然后你必须设置xml($ resources)的内容

$resources = $xml->children()->children();
$resources->active = true;
$resources->..........
etc.

最后,

try 
{
    $opt = array('resource' => 'categories');
    $opt['postXml'] = $xml->asXML();
    $xml = $webService->add($opt);
} 
catch (PrestaShopWebserviceException $e) 
{
    echo 'Something went wrong: '.$e->getMessage();
}