エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


ECCUBEの注文完了画面注文番号と商品情報を編集するCRITEO(クリテオ)タグを編集

   

ECCUBEの注文完了画面注文番号にCRITEO(クリテオ)タグを編集

 

ECCUBEの完了画面に注文情報や商品情報を編集する

 
ECCUBEにCRITEO(クリテオ)のタグを編集する機会がありました。
 
商品一覧ページ、商品詳細ページなどはテンプレートファイルの中だけの処理だけで対応が可能だったのですが、完了ページにコンバージョンのタグを編集する方法は少しカスタマイズが必要になりましたので、それを記載しておきます。
 
今回の対応は、ECCUBE 2.12と 2.13で確認をしました。
 
 
ECCUBEの完了画面には、注文番号や商品情報など注文をした情報を引き継ぎません。
そのため、テンプレートファイルだけの対応では想定しているタグを編集することはできませんので、完了画面に遷移する前に、表示する情報(注文情報と、購入した商品の商品ID、単価、数量)を取得し、完了画面に渡す必要があります。
 
そのためにプログラムの変更が必要になります。
 
 

プログラムの改修・LC_Page_Shopping_Complete_Ex.php

 
変更するプログラムの対象は、下記になります。
 /data/class_extends/page_extends/shopping/LC_Page_Shopping_Complete_Ex.php
 
下記の内容をコピペして追加します。
追加する場所は、一番最後で問題ありません。

 
 

テンプレートファイルの改修・complete.tpl

 
完了画面のテンプレートファイルを変更します。
変更する対象となる完了画面のファイルは下記になります。
 /data/Smarty/templates/default/shopping/complete.tpl
 
下記の内容を適当な場所に追加します。
一番最後で問題ありません。

 
 
プログラム側ですでに編集する値を処理していますので、テンプレート側では単純に受け取った値を編集するだけになっています。
 
クリテオでは、商品情報を 1商品 1行で編集する必要がありますので、改行コードも併せて編集しています。

 - PHP・Smarty・ECCUBE

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

数値文字参照コード変換ツール(HTML特殊文字コード変換ツール)

テキストを数値文字参照コード(特殊文字コード)に変換するツール。テキストを数値文字参照コードに簡単変換。数値文字参照、文字実体参照、特殊文字などの違いも解説。

乱数発生器(パスワード生成サービス)がバージョンアップで高速化!
乱数発生器(パスワード生成サービス)がバージョンアップで高速化!

乱数やパスワードを生成する乱数発生器を高速化!重複しない10桁、20桁の文字列を10万件、20万件と生成することも可能!イベントのキャンペーンのシリアルコードなどにも利用可能!

路線・駅検索をPHPで実装する方法解説。GoogleMapsの緯度経度から計算し検索
路線・駅検索をPHPで実装する方法解説。GoogleMapsの緯度経度から計算し検索

路線・駅検索の仕組みの構築は大変。登録する側も最寄り駅が多い場合は大変。なので簡易に実装するため緯度経度に基づき直線距離を計算する処理を考案して実装して、その処理を解説。

配列の値をテキスト表示する際に「、」でつなげるときの処理方法の一例
配列の値をテキスト表示する際に「、」でつなげるときの処理方法の一例

配列の値を「、」でつないで出力する際、単純にforeachで繰り返し処理をすると「イヌ、サル、キジ、」となるが文字列最後の「、」を出力しない方法を3つ解説している。

cURLを利用する際の注意点「&」があるURLは「"」で囲む
cURLを利用する際の注意点「&」があるURLは「」で囲む

cURLでURLはダブルクォーテーションで囲む。LinuxでもWindowsでもコマンドでは「&」は意味を持つ文字のためエラー原因になる。クォーテーションは常につけておく方が無難。

PHPで1ヵ月前、先月、今月1日、来月末の日付などの算出はDateTimeImmutableを使う
PHPで1ヵ月前、先月、今月1日、来月末の日付などの算出はDateTimeImmutableを使う

PHPには日時をオブジェクトとして生成する関数「DateTimeImmutable」「DateTime」が用意されている。これを利用して1ヶ月後、月初日、月末日、5日後などを指定して日付を取得できる。

数値がMySQLのint(11)に保存できない!PHPの変数が本当にint型か確認!
数値がMySQLのint(11)に保存できない!PHPの変数が本当にint型か確認!

PHPでintegerとdoubleが混在するような計算をする場合は要注意!計算結果が整数値であっても途中で使用する変数にdoubleの値が入っているときは計算結果がintegerではない場合があります。

Smartyの Syntax Errorの原因はスペースかも

Smartyのなかなか原因がつかめない Syntax Errorの原因はスペースかもしれません。

PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある
PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある

PHPでは月末の1ヶ月後が想定した日付にならない場合がある。原因はバグではなくPHPの1ヶ月後の定義によるもの。なので必要とする日付を定義しそれに合わせてDateTime、modifyを使用して算出方法を解説している。

連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説
連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説

PHPの配列・連想配列のキーと値をまとめてhtmlspecialchars()関数でサニタイズ(無害化、無毒化)を行う関数を作成。連想配列のキーはarray_map()関数でのサニタイズは無理。