OpenCart との連携方法
このページで学べること
OpenCart を Klaviyo と外部連携する方法をご覧ください。これらの手順を完了すると、各顧客の購入およびウェブサイトでのアクティビティに基づいて、メールをパーソナライズし、ターゲットを絞れるようになります。OpenCart の外部連携は、1 時間ごとに同期されます。
始める前に
Klaviyo は OpenCart からカタログを同期しない点にご注意ください。
OpenCart 外部連携を追加する
OpenCart 用の Klaviyo 外部連携を追加するプロセスは複数のステップで構成されており、OpenCart と Klaviyo の両方で操作を行う必要があります。
開始するには、Klaviyo は現在 OpenCart 1.4.x と 1.5.x をサポートしています。こちらから Klaviyo OpenCart モジュールをダウンロードしてください:https://www.klaviyo.com/media/downloads/OpenCartKlaviyo-1.1.0.tgz。
- ファイルを解凍し、OpenCart インストールのルートに配置します。
- OpenCart の管理セクションにログインし、Extensions > Modules ページに移動します。
- Klaviyo モジュールをインストールし、次に Klaviyo モジュールの [編集] をクリックします。
- OpenCart のインストールで最後に行う作業は、次の PHP コードを `upload/index.php` の末尾にコピー&ペーストすることです。`$response->getOutput();` 行の直前に貼り付けます。
// [Klaviyo] Save customer cart if it exists.
if ($registry->get('cart')->hasProducts()) {
$registry->get('load')->model('module/klaviyo');
if ($registry->get('customer')->isLogged()) {
$registry->get('model_module_klaviyo')->saveCustomerCart(
session_id(),
$registry->get('customer')->getId(),
$session->data['cart']
);
} else if (array_key_exists('guest', $session->data)) {
$registry->get('model_module_klaviyo')->saveGuestCart(
session_id(),
$session->data['guest'],
$session->data['cart']
);
}
}- Klaviyo で、[外部連携] タブを選択します。
- [アプリを探す] をクリックして OpenCart を検索し、カードをクリックします。次に、[インストール] をクリックします。
- 外部連携設定 ページに移動します。設定ページで OpenCart サイトの URL を入力し、[OpenCart に接続] をクリックします。

- 次のページで、Klaviyo OpenCart Module の下にある API キーをコピーし、OpenCart の Klaviyo モジュール設定に貼り付けます。OpenCart の管理画面で Klaviyo モジュール設定を保存します。

- 必要に応じて、設定新しい OpenCart 顧客を Klaviyo リストに追加するにチェックを入れ、ドロップダウンからリストを選択します。
- Klaviyo に戻り、[セットアップを完了] をクリックしてデータの同期を開始します。
Klaviyo オンサイトトラッキングをインストールする
OpenCart でオンサイトアクティビティをトラッキングするには、まずアカウントにログインし、左下隅のアカウント名をクリックして、[設定] > [API キー] に移動し、Klaviyo の公開 API キーを見つけます。公開キーの長さは 6 文字です。インストールできるオンサイトトラッキングには 2 つの種類があります:
- サイト上でアクティブ
このメトリックは、識別可能なブラウザがウェブサイトにアクセスするたびにトラッキングされます。 - 「商品閲覧」
このメトリックは、識別可能なブラウザがウェブサイト上の商品ページを閲覧するたびにトラッキングされます。
["サイト上でアクティブ"] トラッキングを追加
識別可能なブラウザがウェブサイトを訪問するたびに、このメトリックがトラッキングされます。「サイト上でアクティブ」アクティビティのトラッキングを開始するには:
- 次のコードスニペットをメインのストアテンプレートに追加して、すべてのページに含めます。このスニペットは、使用している他の分析スクリプトと一緒に配置するか、閉じる </body> タグの直前に配置してください。
<script type="text/javascript" async="" src="https://static.klaviyo.com/onsite/js/PUBLIC_API_KEY/klaviyo.js></script>
<script type="text/javascript">
//Initialize Klaviyo object on page load
!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}(); </script>PUBLIC_API_KEYを Klaviyo アカウントの Public API キーに置き換えてください。- 訪問者または顧客がお客様のストアでアカウントを作成できる場合は、次のスニペットを 1 つ目のスニペットの直下に追加します。
<script type="text/javascript">
var klaviyo = window.klaviyo || [];
{% if user.is_logged_in %}
klaviyo.identify({
$email: '{{ user.email }}',
$first_name: '{{ user.first_name }}',
$last_name: '{{ user.last_name }}'
});
{% endif %}
</script>- ウェブサイトで使用するテンプレートの種類によって、{% if user.is_logged_in %} 構文と {{ user.email }} 構文は異なる可能性があります。利用可能なテンプレート言語を使用して、現在のページを閲覧しているユーザーがログインしているかどうかを確認します。ログインしている場合は、可能であればメールアドレスと名前を出力してください。名前の情報がない場合は、それら 2 行と、メールアドレス $email 行の後ろにある末尾のカンマを削除してください。
「商品閲覧」のトラッキングを追加
閲覧放棄フローを設定するか、商品閲覧データに基づいてセグメントを作成する場合は、「Viewed Product」メトリックの JavaScript イベント トラッキングを追加してください。
- 商品ページのテンプレートに、次のスニペットを追加します。
<script type="text/javascript">
var klaviyo = window.klaviyo || [];
klaviyo.track("Viewed Product", {
Title: '{{ product.title }}',
ItemId: {{ product.id }},
Categories: {{ category in product.categories|json }}, // The list of categories is an array of strings.
ImageUrl: '{{ product.image_url }}',
Url: '{{ product.url }}',
Metadata: {
Brand: '{{ product.brand }}',
Price: {{ product.price }},
CompareAtPrice: {{ product.compare_at_price }} // If you have a compare at price. You could also include this for a sale or special price.
}
});
</script>- 上記のスニペットでは
{{ }}プレースホルダー構文を使用していますが、これは OpenCart ストアによって異なる場合があります。重要なのは、表示している商品ページに基づいて、商品フィールドが動的にレンダリングされることです。 - サイトで「商品閲覧」のトラッキングが設定されると、既知の訪問者が商品ページを閲覧するにつれて、Klaviyo アカウントに「商品閲覧」データが入力され始めます。
オンサイトトラッキングの仕組み
サイトに Klaviyo ウェブトラッキングを追加すると、"known browsers"(つまり、過去に少なくとも一度訪問してエンゲージメントがあったブラウザ)の閲覧アクティビティのみをトラッキングできます。ウェブトラッキングの目的でサイト訪問者を識別できる主な方法は 2 つあります。
- 過去のいずれかの時点で Klaviyoを使って送信されたメールをクリックして、ウェブサイトにアクセスしたことがある場合
- 過去のいずれかの時点で Klaviyo のフォームから購読/オプトインした場合
Klaviyo は匿名のブラウザは追跡しません。
Klaviyo 同期を監視する
OpenCart ストアから過去の顧客データと注文データをすべて同期するのにかかる時間は、ストアの規模によって異なります。この過去データの同期が完了すると、有効な外部連携 の下にある OpenCart 外部連携の周囲に緑色の枠線が表示されます。
外部連携を確認するには:
- [分析] の下にあるアカウントの [メトリック] タブに移動します。ここでは、フィルタリングして OpenCart のメトリックをすべて表示できます。OpenCart の Placed Order メトリックを見つけて、アクティビティ フィード アイコンをクリックします。外部連携でデータの同期が開始されている場合、ここに Placed Order イベントが表示され始めます。
- 過去のすべての注文データが自動的に同期されます。これを確認するには、Klaviyo の特定の日のイベント数と OpenCart インターフェイスの値を比較し、一致していることを確認します。
- 例えば、「注文の確定」メトリックを調べる際に、昨日のデータポイントにマウスオーバーするか、グラフの下にあるデータ表を見ると、昨日報告された注文数を確認できます。
- その数値を OpenCart に昨日保存されている数値と比較すると、完全に一致するはずです。一致しない場合は、Klaviyo アカウントのタイムゾーンが、設定されている OpenCart のタイムゾーンと一致していないことが原因である可能性が高いです。
- アカウントのタイムゾーンを確認または更新するには:
- 左下隅の組織名をクリックします。
- [設定] を選択します。
- [組織] タブに移動します。
OpenCart から同期されたデータ
- 売上データと注文データ
どの製品が購入されたか(製品の詳細と画像を含む)。 - 顧客情報
名、姓、所在地、および顧客グループ。 - チェックアウト開始データ
カゴ落ちメールのトリガーに使用されます。これは、統合時に追加した PHP コードスニペットによって有効になります。 - フルフィルメント済み注文データ
注文が発送されたタイミングを追跡するために使用されます。 - オンサイト トラッキング
ユーザーがウェブサイトにアクセスするとき
OpenCart のメトリックを確認するには、Klaviyo の [アナリティクス] > [メトリック] に移動します。ここで、OpenCart で絞り込みできます。

デフォルトでは、Klaviyo は「Placed Order」および「Fulfilled Order」メトリックについて、次のステータスを同期します:
- 注文の確定: 保留、処理済み、処理中、発送済み、完了
- 注文処理済み:発送済み、完了
その他のリソース
- How often integrations sync reference
Learn what data syncs from a particular Klaviyo integration and how often the sync runs. We've organized these integrations by ecommerce platforms, email service providers, and other data integrations.
- Klaviyo's Agency Partners