다운로드
소프트웨어 개발
계정
다운로드
소프트웨어 개발
Login
Forgot Account/Password
계정 만들기
언어
도움
언어
도움
×
Login
Login Name
Password
×
Forgot Account/Password
Translation Status of 한국말
Category:
Software
People
PersonalForge
Magazine
Wiki
검색
OSDN
>
브라 우즈 소프트웨어
>
Internet
>
WWW/HTTP
>
Site Management
>
osCommerce 日本語版
>
포럼
>
osCommerce カスタマイズ
>
オプション価格の改造について
osCommerce 日本語版
Description
Project Summary
Developer Dashboard
웹 페이지
Developers
Image Gallery
List of RSS Feeds
Activity
Statistics
History
다운로드
List of Releases
Stats
소스 코드
Code Repository list
CVS
View Repository
티켓
Ticket List
Milestone List
Type List
Component List
List of frequently used tickets/RSS
Submit New Ticket
Documents
Communication
포럼
List of Forums
イベント (20)
osCommerce カスタマイズ (493)
osCommerce FAQ (1365)
osCommerce 一般 (36)
Mailing Lists
list of ML
tep-j-develop
tep-j-general
News
포럼:
osCommerce カスタマイズ
(Thread #28072)
Return to Thread list
RSS
オプション価格の改造について (2010-12-03 15:12 by
Anonymous
#54582)
Reply
Create ticket
こんにちわニシムラともうします。
products_attributeの機能を改造して金額を変える事を試みております。
特に利用出来るcontributonが見当たらなかったので、皆さんに
知恵をお借りして何とか実現させたいところです。
実用例としては印刷屋さん
商品登録を一つの商品に対して1000,2000,3000...と、
テーブルproductsにp_qtyというカラムを新たに作成して入力しています。
これに対してオプションで
加工基本料金+版下代金+一枚あたりの加工コスト*商品枚数
を追加するために
products_attributeテーブルに以下のカラム
x_price :版下代金
p_price :一枚あたりの加工コスト
を追加して設定しました。
まずは商品詳細での表示部分 ../catalog/product_info.php
if ($products_attributes['total'] > 0) { 以下の
$products_options_query = tep_db_query("select 〜
のなかに、 pa.x_price, pa.price,を追記して、その下の
$products_options_array[sizeof($products_options_array)-1]['text'] .=
以後が表示している箇所らしいのでここに以下の式を当て込んでみました
display_total_price($products_options['options_values_price']+$products_options['x_price']+($products_options['p_price']*$product_info['p_qty'])
これで商品詳細のオプション金額の表示は出来たので購入ページに移動してみると
../catalog/shopping_cart.php
ここには反映されていないようです。
ソースを見ているとたぶん関連しているファイルがいくつかあるようで
../catalog/shopping_cart.php
../catalog/includes/classes/shoping_cart.php
../catalog/includes/modules/order_details.php
の3つだと思うのですが、試しに
../catalog/includes/classes/shoping_cart.phpを弄ってみました
// attributes price以下に金額を表示する箇所をみつけたので
$this->total += $qty * $attribute_price['options_values_price'];
とその下の同じようなセクション内の
$attributes_price += $attribute_price['options_values_price'];
このふたつ。おそらく前者は合計金額を算出しており
後者はオプションの金額表示を担当していると思われるので、
手前の箇所で
$attribute_price_query = tep_db_query("select options_values_price,
x_price,p_priceを呼び出しておいて、表示部で以下のようにしてみた。
$this->total += $qty * $attribute_price['options_values_price']+$attribute_price['x_price']+($attribute_price['p_price']*$product['p_qty']);
一応合計金額には反映されている模様。
つぎにオプション金額の表示部分も同じようにすればできると思ったのですが
*$product['p_qty']が取得出来ずに悩んでおります。
と、長々と説明いたしましたが疑問点は3つ
1.機能を実現するには以上のファイルの書き換えだけで済むのか?(勘違いな事してない?)
2.最後の行でのオプション金額を表示する際に積算する$product['p_qty']の方法。
3.order_detail.phpはどうしたら良いのか?
なるべく内容を削って説明してみたつもりですが
アドバイス、または具体的なソースを頂ければありがたいです。
よろしくお願いします。
Reply to #54582
×
Subject
Body
Reply To Message #54582 > こんにちわニシムラともうします。 > products_attributeの機能を改造して金額を変える事を試みております。 > > 特に利用出来るcontributonが見当たらなかったので、皆さんに > 知恵をお借りして何とか実現させたいところです。 > 実用例としては印刷屋さん > > 商品登録を一つの商品に対して1000,2000,3000...と、 > テーブルproductsにp_qtyというカラムを新たに作成して入力しています。 > > これに対してオプションで > 加工基本料金+版下代金+一枚あたりの加工コスト*商品枚数 > を追加するために > > products_attributeテーブルに以下のカラム > x_price :版下代金 > p_price :一枚あたりの加工コスト > を追加して設定しました。 > > まずは商品詳細での表示部分 ../catalog/product_info.php > if ($products_attributes['total'] > 0) { 以下の > > $products_options_query = tep_db_query("select 〜 > のなかに、 pa.x_price, pa.price,を追記して、その下の > > $products_options_array[sizeof($products_options_array)-1]['text'] .= > 以後が表示している箇所らしいのでここに以下の式を当て込んでみました > display_total_price($products_options['options_values_price']+$products_options['x_price']+($products_options['p_price']*$product_info['p_qty']) > > これで商品詳細のオプション金額の表示は出来たので購入ページに移動してみると > ../catalog/shopping_cart.php > ここには反映されていないようです。 > > > ソースを見ているとたぶん関連しているファイルがいくつかあるようで > ../catalog/shopping_cart.php > ../catalog/includes/classes/shoping_cart.php > ../catalog/includes/modules/order_details.php > の3つだと思うのですが、試しに > ../catalog/includes/classes/shoping_cart.phpを弄ってみました > > // attributes price以下に金額を表示する箇所をみつけたので > $this->total += $qty * $attribute_price['options_values_price']; > とその下の同じようなセクション内の > $attributes_price += $attribute_price['options_values_price']; > このふたつ。おそらく前者は合計金額を算出しており > 後者はオプションの金額表示を担当していると思われるので、 > > 手前の箇所で > $attribute_price_query = tep_db_query("select options_values_price, > x_price,p_priceを呼び出しておいて、表示部で以下のようにしてみた。 > > $this->total += $qty * $attribute_price['options_values_price']+$attribute_price['x_price']+($attribute_price['p_price']*$product['p_qty']); > 一応合計金額には反映されている模様。 > > つぎにオプション金額の表示部分も同じようにすればできると思ったのですが > *$product['p_qty']が取得出来ずに悩んでおります。 > > と、長々と説明いたしましたが疑問点は3つ > 1.機能を実現するには以上のファイルの書き換えだけで済むのか?(勘違いな事してない?) > 2.最後の行でのオプション金額を表示する際に積算する$product['p_qty']の方法。 > 3.order_detail.phpはどうしたら良いのか? > > なるべく内容を削って説明してみたつもりですが > アドバイス、または具体的なソースを頂ければありがたいです。 > よろしくお願いします。
You can not use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.)
Login
Nickname
Preview
Post
Cancel