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

Posted

技术标签:

【中文标题】WooCommerce 自定义迷你购物车功能/简码不起作用【英文标题】:WooCommerce custom mini cart function/shortcode not working 【发布时间】:2019-04-17 11:07:58 【问题描述】:

我一直在尝试在我的 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】:

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

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' );

【讨论】:

以上是关于WooCommerce 自定义迷你购物车功能/简码不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Woocommerce:添加到购物车后的自定义 jquery 事件

Woocommerce 中的迷你购物车数量变化

Woocommerce 自定义添加到购物车循环

如何防止“woocommerce_simple_add_to_cart”重定向到购物车页面?

php WooCommerce迷你购物车项目计数和短代码

更改 WooCommerce 迷你购物车小部件上的购物车和结帐按钮链接