在自定义主题

时间:2017-01-20 07:33:53

标签: wordpress woocommerce

我想在我的自定义主题中过度构建woocommerce / includes / class-wc-product-variation.php文件的构造函数。我怎么能覆盖它? 实际上我有一个"没有找到父母的问题"在将旧的woocommerce更新到最新的woocommerce之后。 由于以下woocommerce的变化: 旧代码wc-product-variation.php - >行号:83:

if ( empty( $this->id ) ) {
   return;
  }

新的wc-product-variation.php代码 - >第no:83行:

if ( empty( $this->id ) ) {
   throw new Exception( sprintf( 'No parent product set for variation #%d', $this->variation_id ), 422 );
  }

任何帮助??? 在此先感谢!!

1 个答案:

答案 0 :(得分:3)

您可以在主题文件中使用以下代码来检查产品是简单还是变量,并通过以下代码进行检查,而不是覆盖:

$product = wc_get_product($product_id); 
if( $product->is_type( 'simple' ) ){
 //here is your code
} else {
 $_product = new WC_Product_Variation( $product_id );
}