【发布时间】:2016-01-27 23:18:24
【问题描述】:
我对 BigCommerce API 编程还很陌生,所以这听起来可能很奇怪。
我正在尝试通过 API 为我的 BigCommerce 商店中的类别批量更新元信息。 bigcommerce.php API 是我的首选武器。我在我的 Mac (MAMP) 上本地运行 php 脚本。
我的问题是,API 只更新文件中的第一行(类别)。所有其他人都没有被触及。
这是我的代码:
require 'vendor/autoload.php';
use Bigcommerce\Api\Client as Bigcommerce;
Bigcommerce::configure(array(
'store_url' => 'https://www.******.com/',
'username' => 'PHP_api',
'api_key' => '**************************'
));
$rows = array_map('str_getcsv', file('subcats_meta_update.csv'));
foreach ($rows as $row) {
$category = array('page_title' => trim($row[1]), 'meta_keywords' => trim($row[2]),'meta_description' => trim($row[3]),'search_keywords' => trim($row[2]));
echo Bigcommerce::updateCategory($row[0], $category);
}
用于测试 .csv 文件仅包含两行,第一列中包含类别 ID,接下来的 3 列中包含元信息。
foreach 循环正确解析文件。我使用 print_r($category) 而不是运行 Bigcommerce::updateCategory() 对此进行了测试。
我什至像这样对数组结果进行硬编码(以测试 Bigcommerce::updateCategory()):
$category = array('page_title' => 'Title one', 'meta_keywords' => 'keywords one','meta_description' => 'meta descr one','search_keywords' => 'search keyw one');
echo Bigcommerce::updateCategory(1, $category);
$category = array('page_title' => 'Title two', 'meta_keywords' => 'keywords two','meta_description' => 'meta descr two','search_keywords' => 'search keyw two');
echo Bigcommerce::updateCategory(2, $category);
同样,只有第一个更新调用通过了。
知道正确批量更新类别信息吗? 非常感谢您的帮助。
【问题讨论】:
标签: php api bigcommerce