【问题标题】:Cart item title isn't concatenated into an HTML table in WooCommerce购物车项目标题未连接到 WooCommerce 中的 HTML 表中
【发布时间】:2018-02-10 08:31:30
【问题描述】:

我创建了一个短代码来列出所有项目名称,如下所示,

add_shortcode( 'show_cart_items', 'tcf_show_cart_items' );
function tcf_show_cart_items()
{
    $cart   =   '<table>';
                foreach(  WC()->cart->get_cart() as $cart_item )
                {
                    $cart .= '<tr>' . $cart_item['data']->get_title() . '</tr>';
                }
    $cart   .=  '</table>';

    return $cart;
}

这工作正常,但我面临的是从桌子上打印出来的项目。当我在网页上检查时,您可以看到输出为屏幕截图,并且 HTML 表格中未打印的项目名称以黄色突出显示。

我的问题是,

  1. 这是什么原因?
  2. 如何解决这个问题?

TIA。

【问题讨论】:

  • 这听起来像 get_title 方法实际上是输出标题(回显,打印),而不是返回它......但根据文档,它应该做后者(至少在 WC 3 ,您使用的是哪个版本?)
  • 我正在使用最新的 WC 3。

标签: php html wordpress woocommerce cart


【解决方案1】:

试试下面的代码,可能是连接跳过代码

add_shortcode( 'show_cart_items', 'tcf_show_cart_items' );
function tcf_show_cart_items()
{
    $cart_item = '';

    foreach(  WC()->cart->get_cart() as $cart_item )
    {
        $cart_item .= '<tr>' . $cart_item['data']->get_title() . '</tr>';
    }

    $cart   =   '<table>'.$cart_item.'</table>';

    return $cart;
}

【讨论】:

  • 它给出了相同的输出但没有运气
【解决方案2】:

您只是忘记在标题周围添加 &lt;td&gt; html 标签:

add_shortcode( 'show_cart_items', 'tcf_show_cart_items' );
function tcf_show_cart_items()
{
    $cart   =   '<table>';
                foreach(  WC()->cart->get_cart() as $cart_item )
                    $cart .= '<tr><td>' . $cart_item['data']->get_title() . '</td></tr>';
    $cart   .=  '</table>';

    return $cart;
}

也可以这样:

add_shortcode( 'show_cart_items', 'tcf_show_cart_items' );
function tcf_show_cart_items()
{
    $cart   =   '<table><tr>';
                foreach(  WC()->cart->get_cart() as $cart_item )
                    $cart .= '<td>' . $cart_item['data']->get_title() . '</td>';
    $cart   .=  '</tr></table>';

    return $cart;
}

代码进入您的活动子主题(或主题)的 function.php 文件或任何插件文件中。

已经过测试,现在可以使用了。

【讨论】:

    猜你喜欢
    • 2018-12-09
    • 2017-04-27
    • 2021-12-11
    • 1970-01-01
    • 2019-09-18
    • 1970-01-01
    • 2020-02-28
    • 1970-01-01
    • 2023-04-08
    相关资源
    最近更新 更多