2

im a newbie of Joomla and Virtuemart. i want to get/show all products in cart (product id, product image, product quantity) and i insert some code in index.php in template folder like this:

foreach( $this->cart->products as $pkey =>$prow ) {
...                     
}

but it make a error on line foreach, anyone can help me i use Joomla 2.5 and Virtuemart 2

thanks

4

1 に答える 1

1

上記のコードを index.php に直接含めようとすると、間違いなくエラーになります。Bcoz ここで参照されている this ポインターはカート ヘルパーです。これは index.php では不明です。

index.php にいくつかのカート機能を挿入したい場合、最良の方法はモジュールを使用することです。public_html/modules/mod_cartinfo には、mod_cartinfo に似たモジュールがいくつかあります (このモジュールは、カートの商品の詳細を返します)。

モジュールのメイン ファイルが、VM カートの詳細に必要ないくつかの php ファイルをロードしていることがわかります。

if (!class_exists( 'VmModel' )) require(JPATH_ADMINISTRATOR.DS.'components'.DS.'com_virtuemart'.DS.'helpers'.DS.'vmmodel.php');
 if (!class_exists( 'VmConfig' )) require(JPATH_ADMINISTRATOR . DS . 'components' . DS . 'com_virtuemart'.DS.'helpers'.DS.'config.php');
    if(!class_exists('VirtueMartCart')) require(JPATH_VM_SITE.DS.'helpers'.DS.'cart.php');
    $cart = VirtueMartCart::getCart(false);

次に、this->cart の代わりに $cart を使用します。

このコード部分を index.php に含めないでください。毎回ロードされます。これを実現するには、モジュールの概念を使用します。これを試して

これがあなたを助けることを願っています..

于 2012-12-18T09:50:17.100 に答える