0

これは、shopify api フォーラムからの相互投稿です。

作成時にカートの注文を識別し、その ID を入ってくる注文と照合することに依存するアプリがあります (カートが最終的に注文になると仮定します)。@HunkyBill のアドバイスによると、これは「カート」Cookie を読み取ることによって実現されます。これは機能しますが、cart オブジェクトで行う必要があると思われることを行うには脆弱な方法のように思えます。2 つの質問があります。

ユーザーが Cookie をオフにしている場合はどうなりますか (カートがまだ予約注文の状態で、カート ID にアクセスする方法はありませんか?)

CartId を単に変数としてカート オブジェクトに追加することは可能ですか?

他のすべてのオブジェクトには独自の ID があり、Liquid を介してアクセスできます。別のオブジェクトである注文に直接リンクする唯一のオブジェクトであるカート オブジェクトを除きます。私は、Shopify がその機能の一部を実行するために Cookie 変数を必要とする可能性があることを完全に理解しています。ただし、カート オブジェクトにカート ID を追加すると、(アプリ開発者にとって) これらの問題がすべて解決され、カート アクティビティと変換された注文を並べる簡単な方法が提供されます。また、カート Cookie を使用して既に作成された製品には影響しません。

カートを識別し、後でそれを注文に関連付けるためのより良い解決策/手法があれば、私はすべて耳にします. この重要な機能 (基本的にはコンバージョンの追跡) が、より堅牢で一貫した方法で処理されていないことに少し驚いています。

4

1 に答える 1

4

ユーザーが Cookie をオフにしている場合は、とにかくうんざりしています。Cookie からのセッション ID がなければ、カートを作成することはできません。

カートの場合: その通りです。フロント エンドでは、リキッド カート オブジェクトにはトークンが含まれていません。クッキーを通じてのみ利用可能です。

これは、省略の理由がいくつかあります。

  • まず、一度にビューでアクティブなカートは 1 つだけなので、ページをレンダリングする際にカートを区別する必要はありません。

  • 2 番目: ビューのコンテキスト内では、トークンは無意味です。ユーザーはそれを見る必要はありません。

個人的には、データを Cookie に依存することは脆弱であるという議論には同意しません。実際、リキッドでポップアップするカート変数は、まったく同じ Cookie で見つかったセッション ID に基づいてロードされます。

とはいえ、液体オブジェクトに含まれない正当な理由は思いつきません。優先度の低い機能リクエストとして提出します。

于 2012-11-07T19:45:43.230 に答える