Php 是否限制客户在成功付款之前查看页面?

Php 是否限制客户在成功付款之前查看页面?,php,xml,magento,magento-1.7,magento-1.8,Php,Xml,Magento,Magento 1.7,Magento 1.8,我已经在我的自定义模块中创建了一个页面,我想在成功支付产品后创建该页面 请建议我如何实施付款限制方法,该方法可以检查产品的付款是否成功,然后相应的客户可以访问同一页面 我感谢你的帮助 谢谢。您可以创建观察者并查找事件 建议活动: 销售\订单\付款\地点\结束 销售\订单\付款\捕获 销售\订单\付款\付款要让客户在成功付款后访问特定页面,请使用事件的观察者签出\u onepage\u controller\u success\u action 您的module config.xml应该如下所示

我已经在我的自定义模块中创建了一个页面,我想在成功支付产品后创建该页面

请建议我如何实施付款限制方法,该方法可以检查产品的付款是否成功,然后相应的客户可以访问同一页面

我感谢你的帮助


谢谢。

您可以创建观察者并查找事件

建议活动:

销售\订单\付款\地点\结束

销售\订单\付款\捕获


销售\订单\付款\付款

要让客户在成功付款后访问特定页面,请使用事件的观察者
签出\u onepage\u controller\u success\u action

您的module config.xml应该如下所示:

<config>
    <!-- ... -->
    <global>
        <!-- ... -->
        <events>
            <checkout_onepage_controller_success_action>
                <observers>
                    <namespace_module>
                        <class>namespace_module/observer</class>
                        <method>yourMethod</method>
                    </namespace_module>
                </observers>
            </checkout_onepage_controller_success_action>
        </events>
        <!-- ... -->
    </global>
    <!-- ... -->
</config>
<?php
class Namespace_Module_Model_Observer extends Mage_Core_Helper_Abstract
{
    public function yourMethod($observer)
    {
         // Your code logic to give customer access to required page
    }
}

名称空间模块/观察者
你的方法
创建名称空间/module/Model/Observer.php。此文件应如下所示:

<config>
    <!-- ... -->
    <global>
        <!-- ... -->
        <events>
            <checkout_onepage_controller_success_action>
                <observers>
                    <namespace_module>
                        <class>namespace_module/observer</class>
                        <method>yourMethod</method>
                    </namespace_module>
                </observers>
            </checkout_onepage_controller_success_action>
        </events>
        <!-- ... -->
    </global>
    <!-- ... -->
</config>
<?php
class Namespace_Module_Model_Observer extends Mage_Core_Helper_Abstract
{
    public function yourMethod($observer)
    {
         // Your code logic to give customer access to required page
    }
}

  • 在您的模块中,创建“销售\订单\付款\付款”事件的观察者
  • 另外,在模块安装文件中创建一个新的customer属性。您可以使用本教程或搜索其他教程(您可以在google上找到许多关于如何在模块中安装属性的示例)。确保属性在前端不可见
  • 在事件函数中,当客户为订单检查付款时,该特定产品是否在该订单中。如果是,请编辑客户并在新创建的属性中添加一些值(true或任何您想要的值)。如果需要监视多个产品,可以通过序列化将数组保存在该属性内
  • 查看该自定义页面(控制器操作)时,请检查customer属性,并检查是否允许他查看该属性

  • 我的回答有用吗?你解决问题了吗?