4

私のテーマ開発では、私の店のすべての製品を入手する方法が見つかりません。ただし、変数collections(例:)を使用してすべてのコレクションを取得できます{% for c in collections %}

4

2 に答える 2

5

このURLを確認してください:https ://help.shopify.com/en/themes/customization/collections/change-catalog-page

魔法のように...すべての製品...

于 2013-01-21T19:04:33.440 に答える
0

すべての製品を一度に取得するか、shopifyストア内のすべての製品に対してクエリ(APIリクエスト)を実行します:このアプリの使用はより管理されています-> https://github.com/phpish/shopify_private_app-skeletonなので、以下の私のソリューションはに基づいていますこのアプリまたはソリューションをソリューションに関連付けることもできます

<?php

session_start();

require __DIR__.'/vendor/autoload.php';
use phpish\shopify;
require __DIR__.'/conf.php';

$shopify = shopify\client(SHOPIFY_SHOP, SHOPIFY_APP_API_KEY, SHOPIFY_APP_PASSWORD, true);

try
{
    $products = $shopify('GET /admin/products/count.json', array('published_status'=>'published'));

    $totalproducts = $shopify('GET /admin/products/count.json', array('published_status'=>'published'));
    $limit = 50;
    $totalpage = ceil($totalproducts/$limit);
    for($i=1; $i<=$totalpage; $i++){
        $products = $shopify('GET /admin/products.json?'.$limit.'=50&page='.$i, array('published_status'=>'published'));
        foreach($products as $product){
          //do anything at once for all the products in store
        }
     }
  }
  catch (shopify\ApiException $e)
  {
    //
  }

要約:アイデアは、パラメーターとしてpage=xを使用して取得することです。ページ数を計算した後、指定された制限、つまり一度に50をフェッチします。

于 2016-07-27T03:40:31.343 に答える