我的PHP代码中有语法错误,我无法弄清楚应该如何修复它。我已经尝试了很长时间,并将错误的代码缩小到以下内容:
<?php
global $post;
$tax_classes = array_filter( array_map( 'trim', explode( "\n", get_option( 'woocommerce_tax_classes' ) ) ) );
if ( ! class_exists( 'Tax_Meta_Boxes' ) ) :
class Tax_Meta_Boxes {
public function __construct() {
add_action( 'save_post', array( $this, 'tax_meta_data' ) );
}
}
?>
我通过PHP检查程序运行代码,错误似乎是最后一行和?>
。
我试着摆弄它,删除它,但仍然存在错误。
错误是由函数引起的:
if ( ! class_exists( 'Tax_Meta_Boxes' ) ) :
class Tax_Meta_Boxes {
public function __construct() {
add_action( 'save_post', array( $this, 'tax_meta_data' ) );
}
}
如果我删除了这个函数,我的错误就消失了,但是这个函数的代码有什么问题,我该如何解决呢?
答案 0 :(得分:4)
您的endif;
if()
<?php
global $post;
$tax_classes = array_filter( array_map( 'trim', explode( "\n", get_option( 'woocommerce_tax_classes' ) ) ) );
if ( ! class_exists( 'Tax_Meta_Boxes' ) ) :
class Tax_Meta_Boxes {
public function __construct() {
add_action( 'save_post', array( $this, 'tax_meta_data' ) );
}
}
endif;// this line
?>