我是社区新手,我想你们专家可以在这方面帮助我。我已经安装了插件,我想覆盖类中的一个函数
<?php
class wf_fedex_woocommerce_shipping_admin{
private function wf_user_permission($auto_generate=null){
$current_minute=(integer)date(\'i\');
if(!empty($auto_generate) && ($auto_generate==md5($current_minute) || $auto_generate==md5($current_minute+1) ))
{
return true;
}
$current_user = wp_get_current_user();
$user_ok = false;
$wf_roles = apply_filters( \'wf_user_permission_roles\', array(\'administrator\', \'shop_manager\') );
if ($current_user instanceof WP_User) {
$role_ok = array_intersect($wf_roles, $current_user->roles);
if( !empty( $role_ok ) ){
$user_ok = true;
}
}
return $user_ok;
}
}
?>
我想重写,如果这样,WP将使用我的自定义而不是插件,我需要在新函数中进行一次更改(我的意思是我只需要在数组中传递“subscriber”)
$wf_roles = apply_filters( \'wf_user_permission_roles\', array(\'administrator\', \'shop_manager\', \'subscriber\') );
最合适的回答,由SO网友:Chetan Vaghela 整理而成
正如@jacob所建议的,您可以添加subscriber
使用将角色添加到该数组中add_filter
. 在活动主题的函数中添加以下代码。php文件。
add_filter( \'wf_user_permission_roles\', \'wf_user_permission_roles_callback\' ) ;
function wf_user_permission_roles_callback( $roles ) {
$roles[] = \'subscriber\';
return $roles;
}