0

Prestashop 1.4.9 のカート モジュール ajax-cart.js 内のカート ID を取得しようとしています。

Cookieに保存されていないため、良い方法が見つかりませんでした。

4

1 に答える 1

3

現在の訪問者からカート ID を取得するにはいくつかの方法がありますが、最も簡単な方法はコンテキストを使用することです。

ステップ 1: /modules/blockcart/ajax-cart.js を開いて探します

$(document).ready(function(){

以下に追加します。

$.ajax({
    type: 'GET',
    url: baseDir + 'modules/blockcart/ajax.php' + '?retrieve_cart_id=1',
    success: function(result_cart_id)
    {
        alert(result_cart_id);
        /* my_id_cart = parseInt(result_cart_id); Uncomment this line to store the value into a JS variable */
    }
});

ステップ 2: /modules/blockcart/ に ajax.php という名前のファイルを作成します。

次のコードを内部に

<?php

include(dirname(__FILE__).'/../../config/config.inc.php');
include(dirname(__FILE__).'/../../init.php');

$context = Context::getContext();
if (Tools::getValue('retrieve_cart_id') == 1)
    echo isset($context->cookie->id_cart) ? (int)$context->cookie->id_cart : 0;

それでおしまい!

また、Javascript でこの値を取得することにより、訪問者に公開されるという事実を考慮することもできます。コードと支払いモジュールの安全性によっては、これが問題になる可能性があります。

于 2013-06-19T13:14:37.677 に答える