WooCommerce自定义迷你购物车功能/简码不起作用

时间:2018-11-14 13:06:37

标签: php wordpress woocommerce

我一直在尝试在我的woocommerce商店中实施MiniCart,但没有成功。

我尝试制作自定义函数和简码,然后在标头中调用它。

这是我在主题函数中使用的代码:

function custom_mini_cart() {
    echo '<a href="#" class="dropdown-back" data-toggle="dropdown"> ';
        echo '<i class="fa fa-shopping-cart" aria-hidden="true"></i>';
        echo '<div class="basket-item-count" style="display: inline;">';
            echo '<span class="cart-items-count count">';
                echo WC()->cart->get_cart_contents_count();
            echo '</span>';
        echo '</div>';
    echo '</a>';
    echo '<ul class="dropdown-menu dropdown-menu-mini-cart">';
            echo '<li> <div class="widget_shopping_cart_content">';
                      woocommerce_mini_cart();
                echo '</div></li></ul>';

}
add_shortcode( '[nachtleven-mini-cart]', 'custom_mini_cart' );

所以我想用它来输出迷你购物车:

<?php echo do_shortcode('nachtleven-mini-cart'); ?>

然而,它总是在前端返回一个字符串:[custom-mini-cart],因此简码似乎不起作用。我在这里想念什么吗?即使是该函数中的简单回声也不会显示。

尽管这是我第一次使用WooCommerce构建代码,但以前在制作和使用简码方面没有任何问题。

任何帮助或提示都将不胜感激,因为我有点忽略了这里的问题。

谢谢=)

1 个答案:

答案 0 :(得分:0)

在调用 add_shortcode($ tag,$ func); 时,在方括号[]中添加名称会为shortcode标签添加错误的钩子。您的代码应为链接:

function custom_mini_cart() {
echo '<a href="#" class="dropdown-back" data-toggle="dropdown"> ';
    echo '<i class="fa fa-shopping-cart" aria-hidden="true"></i>';
    echo '<div class="basket-item-count" style="display: inline;">';
        echo '<span class="cart-items-count count">';
            echo WC()->cart->get_cart_contents_count();
        echo '</span>';
    echo '</div>';
echo '</a>';
echo '<ul class="dropdown-menu dropdown-menu-mini-cart">';
        echo '<li> <div class="widget_shopping_cart_content">';
                  woocommerce_mini_cart();
            echo '</div></li></ul>';

}
add_shortcode( 'nachtleven-mini-cart', 'custom_mini_cart' );