WooCommerce / WordPress 从挂钩中删除 HTML 属性

WooCommerce / WordPress removes HTML attributes from hooks

我正在尝试将自定义属性添加到 WooCommerce 购物车中的产品标签 这是我正在使用的

add_filter( 'woocommerce_cart_item_name', 'woo_api_cart_item_name', 10, 3 );

function woo_api_cart_item_name($item_name, $cart_item, $cart_item_key){

 (... some code)

 if($status == "NEW"){
    if(isset($cart_item["clientDesignURL"]))
    {
        $item_name.= " <span style='color:red;' >✕</span> <a style='color:white;' href='".$cart_item["clientDesignURL"]."' class='clientDesignURLButton'> Customize</a>";
    }
    else
    {
        $item_name.= "<p   onclick='myCustomFunctionB()' class='clientDesignURLError'>-</p>";
    }
 }
 else{
    $item_name .= "<span onclick='myCustomFunctionA()' style='color:green;' class='".$cart_item["clientDesignID"]."'>✓ <img src='".$decoded_response->thumbUrl."'/></span>";
 }

return $item_name;
}

我正在尝试在购物车中的每个项目旁边添加按钮,它在 ajax 中执行某项操作。问题是 woocommerce / wordpress 删除了“onclick”属性。

我试过其他标签,但都被删除了。 Browser inspector 更改主题不起作用。我已经检查了所有插件,但它也没有用。 尝试

等其他标签无效(整个标签已删除)

add_filter( 'wp_kses_allowed_html', 'prefix_filter_allowed_html', 10, 2 );
/**
     * Add "onclick" to allowed KSES output.
     *
     * @param $allowed
     * @param $context
     * @return mixed
     */
function prefix_filter_allowed_html( $allowed, $context ) {
    if ( 'post' === $context ) {
        $allowed['p']['onclick'] = true;
    }

    return $allowed;
}

<p> 标记允许的 HTML 添加 onclick 属性