1

virtuemartにonafterConfirmorderのようなイベントはありますか?joomla onAfterRender、onBeforeRenderイベントのように。注文確認後、コードを実行したい。

4

2 に答える 2

1

たぶん、パスはJoomla 2または3で異なりますか?Joomla 1.5には、次のようなパスはありません。

ROOT_PATH \ folder_name \ administrator \ components \ com_virtuemart \ models \ order.php

次のパスのみが存在します。

ROOT_PATH \ folder_name \ administrator \ components \ com_virtuemart \ classes \ ps_order.php

于 2012-10-13T08:15:11.270 に答える
0

この概念のプラグインを作成する必要があります。

ORDERまず、Virtumartでセクションを見つける必要があります。次のモデルファイルには、すべての注文機能が含まれています。

ROOT_PATH\folder_name\administrator\components\com_virtuemart\models\order.php

このファイルでは、注文が完了した場所を見つける必要があります。そのセクションでは、注文が完了したら、このプラグインが機能を処理するようにトリガーする必要があります。

そのプラグインで定義されているプラ​​グインの任意のイベントを呼び出すことができます。

$dispatcher = JDispatcher::getInstance();
$data       = array($argu1, $argu2);   // any number of arguments you want
return $dispatcher->trigger(onAfterRender, $data);

onAfterRender次に、作成したプラグインでイベントをトリガーします。

<?php
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

jimport( 'joomla.plugin.plugin' );

/**
 * Example system plugin
 */
class plgSystemExample extends JPlugin
{
/**
* Constructor.
*
* @access protected
* @param object $subject The object to observe
* @param array   $config  An array that holds the plugin configuration
* @since 1.0
*/
public function __construct( &$subject, $config )
{
parent::__construct( $subject, $config );

// Do some extra initialisation in this constructor if required
}
/**
* Do something onAfterRender
*/
function onAfterRender()
{
}
}

このように、プラグインを作成する必要があります。

ではごきげんよう....

于 2012-09-17T13:48:16.847 に答える