Bigcommerce通过订单进行分页

时间:2014-06-17 14:27:26

标签: bigcommerce

我使用以下方法撤回一个月的数据:         $ page = 1;     $ filter = array('page'=> $ page,'limit'=> 250,'min_date_created'=> $ startDate);     $ orders = Bigcommerce :: getOrders($ filter);

我在2014-01-06传递$ startDate(适用于订单)。

订单大约有600个,所以我需要翻阅结果。

我正在使用:

$filterCount = array ('status_id' => 2 ,'min_date_created' => $startDate);
$count = Bigcommerce::getOrdersCount($filterCount);

然后,我应该能够将$ count除以250以获得我的页数。但无论我如何玩$ filterCount,$ count总是8773。

我在这里做些蠢事吗?

Warby先生。

2 个答案:

答案 0 :(得分:1)

您希望使用过滤器参数而不是getOrdersCount调用getOrders,因为该资源始终返回订单总数。

答案 1 :(得分:0)

查看您的代码,您正在使用PHP库。 查看getCount方法,它不会采用过滤器'参数。

 public static function getCount($path)
    {
        $response = self::connection()->get(self::$api_path . $path);
        if ($response == false || is_string($response)) {
            return $response;
        }
        return $response->count;
    }

正如您所说,我会使用$reponse->count / 250为您提供网页。 而不是+1我会使用$pages = ceil($reponse->count / 250)然后在FOR语句中使用LESS THAN EQUAL TOO,这将始终为您提供正确数量的页面。

当遍历页面时,检查没有响应,因为您在日期之间过滤它所需的实际页面可能要少得多。如果收到一个空对象,你可以打破循环。 (我认为它们是最古老的 - >最新的)。

希望这有帮助。