下載
軟體開發
帳戶
下載
軟體開發
登入
我忘記帳戶名和密碼了
新增帳戶
語言
手冊
語言
手冊
×
登入
登入名稱
密碼
×
我忘記帳戶名和密碼了
繁體中文翻譯狀態
類別:
軟體
人
PersonalForge
Magazine
Wiki
搜尋
OSDN
>
軟體搜索
>
Internet
>
WWW/HTTP
>
Site Management
>
osCommerce 日本語版
>
討論區
>
osCommerce カスタマイズ
>
オプション価格の改造について
osCommerce 日本語版
描述
專案概要
開發人員儀表板
專案的網頁
Developers
Image Gallery
List of RSS Feeds
活動
使用統計
歷史
檔案下載
發布列表
Stats
原始碼
儲存庫列表
CVS
查看儲存庫
待辦事項
待辦事項列表
里程碑列表
類型列表
元件列表
List of frequently used tickets/RSS
新增待辦事項
文檔
溝通
討論區
討論區列表
イベント (20)
osCommerce カスタマイズ (493)
osCommerce FAQ (1365)
osCommerce 一般 (36)
通信論壇
通信論壇列表
tep-j-develop
tep-j-general
新聞
討論區:
osCommerce カスタマイズ
(Thread #28072)
Return to Thread list
RSS
オプション価格の改造について (2010-12-03 15:12 by
匿名
#54582)
回覆
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はどうしたら良いのか?
なるべく内容を削って説明してみたつもりですが
アドバイス、または具体的なソースを頂ければありがたいです。
よろしくお願いします。
回覆 #54582
×
主題
內容
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.)
登入
Nickname
預覽
Post
取消