Php 付款前审查订单

Php 付款前审查订单,php,wordpress,e-commerce,woocommerce,Php,Wordpress,E Commerce,Woocommerce,我正试图在我的Woocommerce网上商店中添加一个查看订单页面。目前,当我将项目添加到购物车时,我可以进入结帐页面,其中需要并提交账单和发货地址,然后,下一步是付款页面(使用PayPal)。 我想在进入付款页面之前添加一个订单审核页面,因此在结帐页面上输入地址并用户单击“继续”后,应显示一个订单汇总/审核页面,其中包含订单总额和之前输入的地址,以及一个链接,如果用户想要更改地址,则返回。就像一个确认页面。然后,一旦用户继续,它就会转到付款页面 我已经研究过了,但运气不好。我在function

我正试图在我的Woocommerce网上商店中添加一个查看订单页面。目前,当我将项目添加到购物车时,我可以进入结帐页面,其中需要并提交账单和发货地址,然后,下一步是付款页面(使用PayPal)。 我想在进入付款页面之前添加一个订单审核页面,因此在结帐页面上输入地址并用户单击“继续”后,应显示一个订单汇总/审核页面,其中包含订单总额和之前输入的地址,以及一个链接,如果用户想要更改地址,则返回。就像一个确认页面。然后,一旦用户继续,它就会转到付款页面

我已经研究过了,但运气不好。我在
functions.php
中尝试了此操作,但不起作用:

add_action( 'woocommerce_review_order_before_submit','woocommerce_order_details_table');

有没有一种方法可以实现这一点?管理面板中也没有设置。查看我管理的WooCommerce设置,我可以看到您可以通过WooCommerce>设置>签出(顶部的选项卡)在管理中设置“购物车”页面

向下滚动至“结帐页面”,确保已选择“购物车页面”。如果您没有创建一个名为“购物车”的页面,并在其中添加以下短代码:
[woocommerce\u Cart]

完成后,返回上一个WooCommerce设置页面并选择您创建的新页面

在结帐过程中,此页面位于帐单详细信息之前


让我知道这是否有帮助。

我最近遇到了这个问题。我的解决方案是在Wordpress的后端创建一个名为“Review Order”的页面,并在内容编辑器中输入快捷码
[woocommerce\u checkout]
。然后在我的子主题的根目录中创建一个page-review-order.php

在我的page-review-order.php中,我设置了以下定义:

if ( ! defined( 'THIS_IS_CHECKOUT' ) )
{
  define( 'THIS_IS_CHECKOUT', true );
}
if ( ! defined( 'THIS_IS_REVIEW') )
{
  define( 'THIS_IS_REVIEW', true);
}
从这里,我可以完成典型的结帐流程,不费吹灰之力地获得所需的信息,但我可以通过以下内容交换流程中哪些部分可以属于结帐页面,哪些部分可以属于审查页面:

if (defined( 'THIS_IS_REVIEW'))
{
  $reviewPage = true;
}

虽然这可能不是一个完美的解决方案,但下面是我如何解决的

请看一看

我们插入一个隐藏的输入
确认订单标志
,告知是要审核还是已经审核

然后在验证之后,我们使用
woocommerce\u-after\u-checkout\u-validation
检查该值。如果要审查,我们会添加一个假错误

在jQuery中,我们检查错误的数量,如果要查看,则为1,如果有错误,则为2(或更多)(如果有0,则您已经在查看页面上)

在查看页面url上,我还插入了
[woocommerce\u checkout]
短代码,但这次是在一个id为
#confirm\u order\u页面
的容器中。 我再次使用jQuery将隐藏输入的值设置为0:

$('#confirmation_form #place_order').click(function () {
    $('#confirm-order-flag').val('');       
});
那么它就没有错误,并且通过了验证。我对css隐藏了评论页面上的表单。
这可能不是完美的解决方案,但它可能会帮助您开始解决此问题。

所有这些都已设置好。只是为了澄清网站的工作,结帐和付款的工作。我想在结帐和付款页面之间添加一个页面,要求用户确认他们在结帐页面上输入的账单和发货地址,如果他们确认他们继续付款,或者他们返回结帐页面编辑地址,您可以更详细地解释您是如何做到这一点的吗?我也想做同样的事情。谢谢你同时解决了你的问题吗?
$('#confirmation_form #place_order').click(function () {
    $('#confirm-order-flag').val('');       
});