[Tep-j-general] メール確認画面へのメーカー名の表示

Back to archive index

shimada_k shimada_k****@nifty*****
2009年 1月 7日 (水) 20:43:02 JST


島田です。

直接コード直すしかないなーと思いつつ、
自分のところ見てみたらやってたのでコード書きます。

> メーカーが違う同じ名前の商品を多数登録しているのですが、注文時に注文管
> 理画面及び確認メールにメーカー名が表示されないために困っております。
>注文管理画面とは、
/admin/order.php のことですよね?

/admin/includes/classes/order.php
の、最後あたりの行(最後ではありません。)を以下のようにします。

$orders_products_query = tep_db_query("select cd.categories_name,
m.manufacturers_name, op.orders_products_id, op.products_name,
op.products_model, op.products_price, op.products_tax,
op.products_quantity, op.final_price
from " . TABLE_PRODUCTS . " p," . TABLE_ORDERS_PRODUCTS . " op," .
TABLE_PRODUCTS_TO_CATEGORIES . " p2c," . TABLE_CATEGORIES_DESCRIPTION .
" cd," . TABLE_MANUFACTURERS ." m
where op.products_id = p.products_id and p.products_id = p2c.products_id
and p2c.categories_id = cd.categories_id and p.manufacturers_id =
m.manufacturers_id and op.orders_id = '" . tep_db_input($order_id) . "'");
while ($orders_products = tep_db_fetch_array($orders_products_query)) {
$this->products[$index] = array('qty' =>
$orders_products['products_quantity'],
'name' => $orders_products['products_name'],
'categories_name' => $orders_products['categories_name'],
'manufacturers_name' => $orders_products['manufacturers_name'],
'model' => $orders_products['products_model'],
'tax' => $orders_products['products_tax'],
'price' => $orders_products['products_price'],
'final_price' => $orders_products['final_price']);

※厳密には不要なカラムがある可能性大なので、必要に応じてカスタマイズして
ください。
 要は TABLE_PRODUCTS と TABLE_MANUFACTURERS 絡めているということです。

そうすればたぶん?、
/admin/order.php
にて、
$order->products[$i]['manufacturers_name'] で呼び出せると思います。

試しに
$order->products[$i]['qty']
を探してみて、その隣に記述してみてください。
$order->products[$i]['qty'] . $order->products[$i]['manufacturers_name']
 って感じで。

ちなみにウチでは納品書に記載してます。検品時に役立ちますからね。

確認メール(カタログ側)も同じだと思いました。
classes/order.php 修正 → checkout_process.php 修正



Tep-j-general メーリングリストの案内
Back to archive index