Я работаю над задачей, в которой мне нужно получить продукты bigcommerce для проверки url продукта для создания файла sitemap.xml
На самом деле на сайте есть 180000 продуктов, поэтому мне нужно будет создать несколько XML-файлов sitemap и файл с одним индексом (sitemap.xml).
Я выполнил все сценарии, чтобы сделать это, я группирую 50000 URL-адресов в каждом файле xml файла Sitemap.
Когда я запустил его, как только он был выполнен правильно и создал 4 файла Sitemap. все было хорошо.
Но теперь я не могу выполнить его coz после запуска на некоторое время, это дает мне сетевую ошибку (что-то вроде связи с большой торговлей потеряно)
Проблема в том, что существует предел при вызове bigcommerce api, потому что нам нужно отправить ему страницу нет, и одновременно выдается всего 250 продуктов.
поэтому я обратился к специалисту по поддержке bigcommerce за расширением лимита для получения продуктов в одном вызове api. он предложил мне использовать цикл и сообщил мне, что для этого нет никакого решения, мы можем получить только 250 продуктов за раз.
его трудно получить 180000 продуктов в одном скрипте, вызывающем api in loop. но в моем случае это обязательное для меня выполнение этого в скрипте sigle (мне нужно установить этот скрипт как задание cron).
Есть ли какое-либо решение для решения этой задачи без какой-либо сетевой ошибки. Любой специалист по большой торговле здесь?
Любая помощь будет принята с благодарностью!
У меня была такая же проблема, пытаясь вытащить все продукты в магазине, над которым я работал. Как бы то ни было, у них есть максимальное количество продуктов за запрос,
Вместо этого вам нужно использовать фильтр и цикл … я считаю, что нет другого способа сделать это.
$count = Bigcommerce::getProductsCount()/250; for($x=1;$x<$count;$x++){ $filter = array("page" => $x, "limit" => 250); $products = Bigcommerce::getProducts($filter); // All your code goes here }
Надеюсь, это ответит на ваш вопрос. Хотя этот ответ немного запоздал, это может помочь кому-то