web-dev-qa-db-ja.com

Ubercartでカートページに商品を追加するフックはどれですか(add-cart-buttonをクリックしたとき)?

Ubercartでは、購入者が商品を見て、その商品を購入するための[カートに追加]ボタンをクリックしている間、カートに商品が追加される原因となっているアクションを知りたいですか?

売価を編集したいので、この質問だけです。すでにこのフックを試しましたが、何も印刷していませんでした。

    mymodulename_uc_add_to_cart($nid, $qty, $data) {
    print "<pre>";print_r($data);print "</pre>";exit;

    if ($qty > 1) {
        $result[] = array(
                'success' => FALSE,
                'message' => t('Sorry, you can only add one of those at a time.'),
        );
    }
    return $result;
}

これらのフックのどれ

hook_uc_add_to_cart
hook_uc_add_to_cart_data
hook_uc_cart_checkout_start
hook_uc_cart_display
hook_uc_cart_item_delete
hook_uc_cart_item_insert
hook_uc_cart_item_presave
hook_uc_cart_item_update
hook_uc_cart_pane
hook_uc_cart_pane_alter
hook_uc_checkout_complete
hook_uc_checkout_pane
hook_uc_checkout_pane_alter
hook_uc_update_cart_item
uc_checkout_pane_callback

カートページのカートに数量と価格を追加する責任があります。

何か案は?前もって感謝します

2
Ram

カートアイテムを変更する場合は、ubercartのhook_uc_cart_alterを使用できます。

このフックはubercart 7のドキュメントにはありませんが、Ubercart 7でも機能します。

これは、カートが再構築されるたびに(たとえば、製品が追加されるときに)呼び出されるため、カートアイテムを変更するのに適しています。

私はuc_couponモジュールをチェックし、フックhook_uc_cart_alterがそのモジュールに実装されています。したがって、このフックを試すことができます。

編集:商品の価格を変更するコードスニペット

/**
 * Implements uc_cart_alter.
 */
function mymodule_uc_cart_alter(&$items ) {

  foreach ($items as $index => $item) {

   //you can add condition for your bid product

    $items[$index]->price = 100;
  }
}

参考のため:

http://www.ubercart.org/docs/api/hook_uc_cart_alter

2

少しグーグルで、私はこれを見つけました、あなたが探しているものかもしれません

コア追加機能は、

uc_cart_add_item($nid, $qty = 1, $data = NULL, $cid = NULL, $msg = TRUE, $check_redirect = TRUE, $rebuild = TRUE

参照

http://api.ubercart.me/api/drupal/ubercart!uc_cart!uc_cart.module/function/uc_cart_add_item/7

しかし、コードを貫通できるフックを探しているなら、

hook_uc_add_to_cart($nid, $qty, $data)

参照

http://api.ubercart.me/api/drupal/ubercart!uc_cart!uc_cart.api.php/function/hook_uc_add_to_cart/7

また、さまざまなAPIの詳細については、次のリンクを確認してください

http://api.ubercart.me/api/drupal/ubercart!uc_cart!uc_cart.api.php/7

http://api.ubercart.me/api/drupal/functions/7

更新:

価格のカスタム変更について、すでに議論されているスレッドのチェックアウト こちら

0
arpitr