在WordPress插件小部件中覆盖功能

时间:2012-02-22 12:54:15

标签: php wordpress

我需要覆盖WordPress插件中包含的小部件中的设置(该插件是woocommerce)。我在插件的widget代码中找到了我需要进行更改的内容(对于product_categories小部件,我想添加$ cat_args ['depth'] = 1;这样我只能看到父类别)并且一切正常,但我希望能够以某种方式做到这一点,以便如果插件更新,它不会消除更改。我有一个我开发的自定义主题...有没有办法在主题中进行更改,以便我仍然可以安全地更新woocommerce?

1 个答案:

答案 0 :(得分:1)

这样做的唯一方法是让Widget开发人员做这样的事情:

$cat_args_depth = 1;
$cat_args_depth =  apply_filters('woocommerce_cat_args_depth', $cat_args_depth );
$cat_args['depth'] = $cat_args_depth;

然后你可以使用

add_filter( 'woocommerce_cat_args_depth', function( $cat_args_depth ) { 
    $cat_args_depth = 2; // your value
    return $cat_args_depth ;
});