加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – WordPress – 编辑插件的过滤功能

发布时间:2020-12-13 16:04:28 所属栏目:PHP教程 来源:网络整理
导读:我想知道是否有人可以帮助我. 我有一个名为Paid Memberships Pro的插件. 在注册表单上有一些我想要的字段. 我已经完成了代码并找到了设置哪些字段是必需的而不是必需的地方,如下所示: //require fields$pmpro_required_billing_fields = array( "bfirstname
我想知道是否有人可以帮助我.

我有一个名为Paid Memberships Pro的插件.

在注册表单上有一些我想要的字段.

我已经完成了代码并找到了设置哪些字段是必需的而不是必需的地方,如下所示:

//require fields
$pmpro_required_billing_fields = array(
    "bfirstname" => $bfirstname,"blastname" => $blastname,"baddress1" => $baddress1,"bcity" => $bcity,"bstate" => $bstate,"bzipcode" => $bzipcode,"bphone" => $bphone,"bcountry" => $bcountry,"bemail" => $bemail,"CardType" => $CardType,"AccountNumber" => $AccountNumber,"ExpirationMonth" => $ExpirationMonth,"ExpirationYear" => $ExpirationYear,"CVV" => $CVV
);
$pmpro_required_billing_fields = apply_filters("pmpro_required_billing_fields",$pmpro_required_billing_fields);
$pmpro_required_user_fields = array(
    "username" => $username,"password" => $password,"password2" => $password2,"bconfirmemail" => $bconfirmemail
);
$pmpro_required_user_fields = apply_filters("pmpro_required_user_fields",$pmpro_required_user_fields);

这是在其中一个插件核心文件插件/ paid-membership -pro / preheaders / checkout.php中找到的

我想能够覆盖这个,但我不想编辑核心文件,有没有办法可以通过我的主题functions.php文件编辑这个?

例如,将bfirstname和blastname添加到$pmpro_required_user_fields?

任何帮助将不胜感激,我一直在寻找如何做到这一点但我真的不明白它是否可能.

谢谢大家:)

解决方法

(将此代码放入chid主题function.php文件中)

不是shure,但你可以先尝试使用remove_filters:

remove_filters("pmpro_required_billing_fields",$pmpro_required_billing_fields);
remove_filters("pmpro_required_billing_fields",$pmpro_required_user_fields);

然后,您可以克隆这些数组,自定义它们(并稍微更改它们的名称),然后为该自定义数组重新应用过滤器:

$pmpro_required_billing_fields2 = array(
    /* your custom code goes here */
);
$pmpro_required_billing_fields2 = apply_filters("pmpro_required_billing_fields",$pmpro_required_billing_fields2);

$pmpro_required_user_fields2 = array(
    /* your custom code goes here */
);
$pmpro_required_user_fields2 = apply_filters("pmpro_required_user_fields",$pmpro_required_user_fields2);

这只是一个未经考验的想法,希望它能奏效.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读