1

ユーザーが「Thank you」ページに直接アクセスしようとした場合、リクエストに注文がない場合、ユーザーは woocommerce カートにリダイレクトされます。

上記の機能のリクエストを Wordpress フォーラムに送信しました。その間、誰かが私のテーマの functions.php を介してこれを行う方法を考えてくれることを望んでいましたか?

woocommerce_thankyou フックは、ページにアクセスしただけでは読み込まれないため、使用できません (チェックアウトからの注文でサンクス ページにアクセスした場合にのみフック可能です)。

functions.php で woocommerce のサンキュー ページであることを確認し、グローバルな $order オブジェクトがあるかどうかを確認する方法はありますか?

4

1 に答える 1

1
add_action( 'template_redirect', 'your_template_direction_function' );
function your_template_direction_function() {
    global $woocommerce;
    if ($woocommerce && is_page( woocommerce_get_page_id( 'thanks' ) ) && sizeof($woocommerce->cart->get_cart())==0) :
        wp_redirect(get_permalink(woocommerce_get_page_id('cart')));
        exit;
    endif;
}
于 2013-02-01T21:02:36.457 に答える