カスタム モジュールの OXID eShop フレームワークでいくつかのトラッキング イベントを作成しようとしていますが、コア ファイルを編集しない限り、カスタム ページにコードを配置するためのイベント ハンドラーまたは何かが見つかりません。製品ページ、カテゴリ ページ、バスケットなどでカスタム API 呼び出しを行いたいのですが、カスタム モジュールでこれを処理する方法はありますか?
1 に答える
OXID には、magento やショップウェアでおなじみのようなイベントやフックはありません。次の 2 つのオプションがあります。
1)サーバー側の php コードを実行するには、追跡したいページの render() 関数など、OXID の関数を拡張する必要があります。製品ページの場合は「詳細」になります -> applications/controllers/details.php カテゴリページは「alist.php」で、バスケットはbasket.phpです
2)シンプルな JS を使用してクライアント側の API 呼び出しを行います。すべての js コードをテンプレート ブロック (ヘッダーやフッターなど) に追加し、さまざまなコントローラー クラスの if-else ロジックを作成できます。ここのように: https://github.com/OXID-eSales/oxideshop_ce/blob/b-5.3-ce/source/application/views/azure/tpl/layout/base.tpl#L32
また、Google アナリティクスや piwik の追跡モジュールを調べることもできます。これらは、やりたいこととよく似ています。必要に応じて、さらに例を挙げることができます。