自定义WooCommerce review-order.php结帐模板

时间:2016-12-01 23:42:23

标签: php wordpress woocommerce orders hook-woocommerce

所以我正在研究具有儿童主题的WooCommerce。我已经创建了我的结构,

/themes/child/woocommerce/checkout/review-order.php

我的目标只是向页面添加一些“静态文本”。 例如,<h2>Purchase Disclaimer</h2>

内部review-order.php

<?php
if ( ! defined( 'ABSPATH' ) ) {
    exit;
}
?>
<h2>Purchase Disclaimer</h2>

我的问题是,当我查看该页面时,它会继续,

<h2>Purchase Disclaimer</h2>
<h2>Purchase Disclaimer</h2>

我不知道为什么它似乎加载了2次。这是一个小故障,还是我加载它很奇怪?也许有人可以帮我澄清这个问题。

提前致谢

1 个答案:

答案 0 :(得分:5)

结帐审核订单表首先加载一次,然后ajax正在进行第二次加载(假设更新),所以你必须使用一点条件来避免这种情况:

<?php if(!defined( 'DOING_AJAX' )): ?>
<h2>Purchase Disclaimer</h2>
<?php endif; ?>

您应该避免 <h2> 标记,因为它已用于 <h3 id="order_review_heading">Your order</h3>

或者你也可以用这种方式在 woocommerce_checkout_before_order_review 钩子中使用钩子函数:

add_action('woocommerce_checkout_before_order_review', 'my_custom_funtion');
function my_custom_funtion(){
    ?>
        <h2>Purchase Disclaimer2</h2>
    <?php
}

此代码包含活动子主题(或主题)的function.php文件或任何插件php文件。