是否有方法覆盖函数中的woocommerce核心函数。php?
例如,文件位置位于:wp-content/plugins/woocommerce/includes/class-wc-order-item-shipping。php
有以下公共功能
public function set_method_title( $value ) {
$this->set_prop( \'name\', wc_clean($value) );
$this->set_prop( \'method_title\', wc_clean($value) );
}
如何将其更改为:
public function set_method_title( $value ) {
$this->set_prop( \'name\', $value );
$this->set_prop( \'method_title\', $value );
}
最合适的回答,由SO网友:Jacob Peattie 整理而成
您不能用自己的代码替换任何插件函数,除非:
插件包装在function_exists()
检查这使得函数可插入,这意味着如果您先定义它,插件将不会再次尝试定义它,您的插件将被使用。此函数不可插入某处有一个过滤器,通过使用apply_filters()
函数,用于替换值。该值可能是函数的输出,通过使用过滤器,您可以用自己的输出替换该输出您标识的特定功能也没有,因此无法替换。我认为WooCommerce可能有很好的理由申请wc_clean()
对于这些属性,如果不存在,则可能无法按预期运行,或者可能会带来安全风险。