禁用特定管理员URL上的插件或JS

时间:2019-11-07 作者:walswals

我的网站上有两个相互冲突的插件:

Paystack支付表单强大表单是否有办法仅在我强大表单的入口页面上禁用Paystack支付表单WP插件:site.com/wp-admin/admin.php?page=formidable-entries&frm_action=edit&id=x 哪里x= any positive number from 1 to infinity ?

当我禁用Paystack插件时,我可以查看强大的表单条目。但启用时,它会导致一个错误,使所有字段都置乱。

我试图解决一个类似的问题,但没有成功:Disable plugin on Specific Page of Admin

我对编码是新手。也许我没有很好地替换变量。

提前谢谢。

编辑:

这是我在上面链接中给出的答案后使用的代码:

<?php
add_filter( \'option_active_plugins\', \'wpse264498_deactivate_ps\' );

function wpse264498_deactivate_ps($plugins){

    // check if you are on the certain page
    global $pagenow;
    if( $pagenow == \'admin.php\' ) {

        // check if it\'s right CPT
        if( isset($_GET[\'page\']) && $_GET[\'page\'] == \'formidable-entries\') {

            // search the plugin to disable among active plugins
            // Warning! Check the plugin directory and name
            $key = array_search( \'payment-forms-for-paystack/paystack-forms.php\' , $plugins );

            // if found, unset it from the active plugins array
            if ( false !== $key ) {
                unset( $plugins[$key] );
            }
        }
    }

    return $plugins;
}

1 个回复
最合适的回答,由SO网友:walswals 整理而成

我找到了解决方法:

我安装并激活了插件管理器WP插件使用的设置:模糊URL匹配=打开忽略URL协议=打开忽略URL参数=打开Selective Plugin Loading = ON (very important)

  • Selective Admin Plugin Loading = ON (very important)
  • 使用permalink创建了一个新的插件过滤器http://example.org/wp-admin/admin.php?page=formidable-entries
  • 选中了插件筛选页面中的“也影响孩子们”,在筛选页面中的插件列表中禁用了Paystack的支付表单,这为我解决了这个问题,这花了我好几个星期的时间,几乎让我不知所措!!!希望以上内容对其他人有所帮助

  • 相关推荐

    Testing Plugins for Multisite

    我最近发布了一个WordPress插件,它在单个站点上非常有效。我被告知该插件在多站点安装上不能正常工作,我理解其中的一些原因。我已经更新了代码,现在需要一种方法来测试更新后的代码,然后才能转到实时客户的多站点安装。我有一个用于测试的WordPress安装程序的单站点安装,但需要在多站点安装上进行测试。根据我所能找到的唯一方法是在网络上至少有两个站点来安装整个多站点安装,以测试我的插件。设置WordPress的整个多站点安装是插件开发人员的唯一/首选方式,还是有更快的测试环境可用。