簡體   English   中英

當 Woocommerce 中的籃子有項目時添加自定義主體類

[英]Add a custom body class when basket has items in Woocommerce

當我的 woocommerce 購物車有籃子物品時,我正在嘗試進行一些樣式調整。

添加項目時,會出現“立即使用貝寶付款”按鈕,但它的默認定位需要修復。 不幸的是,當這個按鈕出現時,我看不到任何出現的類。

有誰知道當購物車總數不再為零時如何向正文添加一個類?

任何幫助,將不勝感激。

這可以通過以下兩個掛鈎函數來完成:

  • 當購物車不為空時,第一個將向'has_items'添加'has_items'
  • 第二個將在 Ajax 添加到購物車事件中將'has_items'類添加到正文(如果尚未設置)。

編碼:

add_filter( 'body_class', 'add_body_class_for_cart_items' );
function add_body_class_for_cart_items( $classes ) {
    if( ! WC()->cart->is_empty() )
        $classes[] = 'has_items';

    return $classes;
}

add_action( 'wp_footer', 'add_body_class_for_ajax_add_to_cart' );
function add_body_class_for_ajax_add_to_cart() {
    ?>
        <script type="text/javascript">
            (function($){
                $('body').on( 'added_to_cart', function(){
                    if( ! $(this).hasClass('has_items') )
                        $(this).addClass('has_items');
                        console.log('added_to_cart');
                });
            })(jQuery);
        </script>
    <?php
}

代碼位於活動子主題(或主題)的 function.php 文件中。

測試和工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM