在thankyou上显示内容 - WooCommerce

Fil*_*nho 2 php wordpress woocommerce

您好我试着在结帐页面,购物车页面和感谢页面显示一些内容,购物车和结帐页面到目前为止还可以,但我无法在thankyou页面上显示正确的内容

这是我正在尝试做的事情

<?php if (is_checkout() || is_cart() && sizeof($woocommerce->cart->cart_contents) == !0 || woocommerce_get_page_id('thanks')) { ?>
    <div class="flow">
        <?php if (is_cart()) { ?>
            <?php
            $fase2 = "done";
            $fase3 = "wait";
            $fase4 = "wait";
            $icon2 = "<i class='fa fa-user'></i>";
            ?>
        <?php } elseif (is_checkout()) { ?>
            <?php
            $fase2 = "done";
            $fase3 = "done";
            $fase4 = "wait";
            $icon2 = "<i class='fa fa-check'></i>";
            $icon3 = "<i class='fa fa-user'></i>";
            ?>
        <?php } elseif (woocommerce_get_page_id('thanks')) { ?>
            <?php
            $fase2 = "done";
            $fase3 = "done";
            $fase4 = "done";
            $icon2 = "<i class='fa fa-check'></i>";
            $icon3 = "<i class='fa fa-user'></i>";
            $icon4 = "<i class='fa fa-user'></i>";
            ?>
        <?php } ?>
        <ul>
            <li><i class="fa fa-check"></i><span class="done">Product</span></li>
            <li><?php echo $icon2 ?><span class="<?php echo $fase2 ?>">Cart</span></li>
            <li><?php echo $icon3 ?><span class="<?php echo $fase3 ?>">Pay</span></li>
            <li><?php echo $icon4 ?><span class="<?php echo $fase4 ?>">Order Received</span></li>
        </ul>
    </div>
Run Code Online (Sandbox Code Playgroud)

如何仅在thankyou页面上显示内容?

Pel*_*red 5

正如此处的其他回复中所述,函数woocommerce_get_page_id()已弃用并在WooCommerce 2.0中删除.这是因为以前版本的WooCommerce中的页面被端点替换(解析URL以找出应该显示的页面).因此,函数woocommerce_get_page_id()被替换为is_wc_endpoint_url(),您应该像这样使用它:

if( is_wc_endpoint_url( "order-received" ) ) 
Run Code Online (Sandbox Code Playgroud)