Woocommerce - sizeof():参数必须是数组或实现 Countable 的对象

Posted

技术标签:

【中文标题】Woocommerce - sizeof():参数必须是数组或实现 Countable 的对象【英文标题】:Woocommerce - sizeof(): Parameter must be an array or an object that implements Countable 【发布时间】:2020-05-28 19:16:03 【问题描述】:

我需要解决此错误的解决方案。 CMS Wordpress(4.4.21),插件 Woocommerce(2.1.6)。 php(7.3.6)

sizeof():参数必须是数组或者实现了Countable的对象 /var/www/u0900579/data/www/xxx/wp-content/plugins/woocommerce/includes/wc-conditional-functions.php 在第 237 行

function is_filtered() 
        global $_chosen_attributes;

        ERROR! ------>  return apply_filters( 'woocommerce_is_filtered', ( sizeof( $_chosen_attributes ) > 0 || ( isset( $_GET['max_price'] ) && isset( $_GET['min_price'] ) ) ) );
    

【问题讨论】:

错误信息里给你解决方法。传递给count() 的参数,在本例中为变量$_chosen_attributes 必须是实现Countable 的数组或对象。 【参考方案1】:

$_chosen_attributes 的内容是什么? 尝试对变量进行类型转换:

return apply_filters( 'woocommerce_is_filtered', ( sizeof( (array) $_chosen_attributes ) > 0 || ( isset( $_GET['max_price'] ) && isset( $_GET['min_price'] ) ) ) );

【讨论】:

以上是关于Woocommerce - sizeof():参数必须是数组或实现 Countable 的对象的主要内容,如果未能解决你的问题,请参考以下文章

禁用\更改 WooCommerce 通知 url 参数

WooCommerce 复合产品:如何使用 URL 参数更改组件的默认产品选项?

Woocommerce 预订参数网址

为自定义 URL 参数设置 Cookie - wordpress/woocommerce

调整 WooCommerce 添加到购物车短代码的参数不起作用

在与woocommerce商店连接时缺少离子3中的参数