我正在尝试编辑wordpress中的插件,该插件处理符合我需求的积分系统。我有两个函数,A和B.函数A基本上是告诉插件根据后期ID来处理不同数量的点。功能B现在正在尝试合并功能A中的变量$ amount以限制用户进入负余额。我的问题是,在确定其参数时,我无法从函数A获得函数B.我试图将它设置为全局变量,但它没有用。有人可以建议什么是最好的方法吗?
基本来说,插件设置为始终从用户获得100分 " dealing_points&#34 ;.但是,如果post term_id等于以下任何一项,则点数会发生变化。现在我需要函数B中的$ amount始终等于在完成其参数时在if条件中计算的新$ amount。
function A( $run, $request ) {
if ( $run['ref'] == 'dealing_points' ) {
// Original amount (Usually take 100 points)
$amount = $request['amount'];
if(isset($_POST['term_id'])){
if ($_POST['term_id'] == '74' )
$amount = -50;
elseif ($_POST['term_id'] == '75' )
$amount = 50;
$run['amount'] = $amount;
}
}
return $run;
}
function B( $reply, $request) {
if ( $reply === false || $request['amount'] > 0 ) return $reply;
extract( $request );
$user_balance = get_users_balance( $user_id, $type );
// Don't allow user to ever go below zero
if ( ( $user_balance + $amount ) < 0 ) return null;
return $reply;
}