"茅野泰明@DB"
chino****@desig*****
2006年 1月 13日 (金) 18:16:26 JST
メディアネット茅野です。 なんだか呼ばれているようでしたので... まず初めに言わせていただきたいのですが、PHPのソースを自分で改変する方は、PHPのリファレンスマニュアルなりそれ相当のWebページをご覧になることを強くお勧めします。また田村さんのosCommerceの本も必須でしょうね。 > -------------------------------- > /catalog/indcludes/functions/general.phpあたりで以下 > の関数を定義しておき > ます。 > > function affiliate_A8($order_id) { > $url_suffix = '&so='.$order_id; > > $orders_product_query = tep_db_query("select products_id, > products_price, final_price, products_quantity from " . > TABLE_ORDERS_PRODUCTS . " where orders_id = '" . $order_id . "'"); > while ($orders_product = tep_db_fetch_array($orders_product_query)) { > $amount = floor($orders_product['products_price'] * > $orders_product['products_quantity']); > $url_suffix .= '&si='. floor($orders_product['products_price']) . '.' > $orders_product['products_quantity'] . '.' . $amount . '.' . > $orders_product['products_id']; > } > return A8_AFFILIATE_URL . $url_suffix . '&ts=' . date(YmdHis); > } > -------------------------------- > > /catalog/indcludes/functions/general.phpの、どのあたり > がよろしいのでしょうか? general.phpは様々な関数を記述してあるだけですから、最後の部分にでも記述してやればいいでしょう。 > > また・・・、 > 「なお、A8_AFFILIATE_URLは適当なところで適切な値を > defineしておいてください。」 > とありますが、調べてはみたのですが詳しいことが分かりません。 > > 「define -- 名前を指定して定数を定義する」ということら > しいですが、ようするに、定義づけのことなのでしょうか? > その定義づけを、商品登録時に行うということなのか、そ > れとも、ソースを書き入れる時点で定義づけをしておくと > いうことなのでしょうか? これはPHPのリファレンスの「define」の部分を見ていただければすぐにわかることなのでここでは説明しません(ここでその話をするとosCommerceのMLではなくPHPのMLになってしまうので)が、簡単に言うと変数に対してその内容を設定(「定義」)するということです。 この設定は、私の場合は/includes/application_top.phpで読み込むようにしている他に作った設定ファイルに以下のように記述してあります。 define('A8_AFFILIATE_URL', 'https://px.a8.net/cgi-bin/a8fly/sales?pid=s0000000*******'); これはapplication_top.phpに直接記述してもいいでしょうし、いろいろなファイルに記述するのがいやなら、checkout_success.phpに記述してもいいでしょう。 > 当然ながらアフィリエイトの場合、様々な商品を取り扱う > ことになりますと、リンク先も”管理画面”の”商品登録(商 > 品の説明)”や”商品画像”のところで個別(商品ごと)に > リンク先のURLlを指定しておかなくてはいけませんが、こ > ういったことも出来るようになるのでしょうか? おっしゃっていることがよく理解できないのですが、ここでの「リンク先」とはアフィリエイターのブログなりWebページということでしょうか? ちょっと勘違いされているようなのですが、私が提示した関数は、商品の購入があった場合に、その購入者はどのアフィリエイト経由できたかをA8に通知するタグを生成するものです。 なので、アフィリエイトのページに記述してもらうタグを生成するものではありません。(この作業はA8が行うものですので) > > そして同様に・・・ > -------------------------------- > そして、checkout_success.phpにて以下のタグを設置します。 > > <IMG SRC="<?php echo affiliate_A8($orders['orders_id']); ?>" width="1" > height="1"> > -------------------------------- > こちらも具体的にはどのあたりに設置すると良いのでしょうか? これはタグの整合性を損なわないのであればどこでもかまわないでしょう。ちなみに私は下の方に設置していますが。 > 私の場合、A8で使いたいわけではないのですが、他のアフィリエ > イト商品にも使える(応用できる)ようになるでしょうか? 上記のタグは、A8に送信するパラメータを自動で設定するものです。ですので、パラメータはA8特有のものであり、他のアフィリエイトではまた違ったパラメータとなります。その場合はそれ用の関数を作ってやらなければなりません。(ちなみに私も複数のアフィリエイトを利用していますが、それごとに関数を作成しています) ただ、パラメータはアフィリエイトによってそれほど変わるものではないので、応用はそれほど難しくはないと思います。 -- メディアネット株式会社 東京都新宿区北新宿1-13-19 弘林ビル7F 茅野泰明 <chino****@desig*****> tel:03-3363-6233