阻止插件更新可能性(但不是通过隐藏通知)

时间:2019-11-26 作者:Chris Osiak

也可以手动阻止特定插件的更新吗?我不想通过隐藏通知、更改插件版本或诸如此类的方式来阻止这一点。我希望通知显示,显示新版本号,但当手动点击更新时,它应该阻止/不允许这样做-最好在插件部分显示某种(自定义)通知(例如,“无法更新此插件”)。

2 个回复
SO网友:Awais

尝试以下操作:

add_filter( \'http_request_args\', \'dm_prevent_update_check\', 10, 2 );
function dm_prevent_update_check( $r, $url ) {
    if ( 0 === strpos( $url, \'http://api.wordpress.org/plugins/update-check/\' ) ) {
        $my_plugin = plugin_basename( __FILE__ );
        $plugins = unserialize( $r[\'body\'][\'plugins\'] );
        unset( $plugins->plugins[$my_plugin] );
        unset( $plugins->active[array_search( $my_plugin, $plugins->active )] );
        $r[\'body\'][\'plugins\'] = serialize( $plugins );
    }
    return $r;
}
学分:https://stackoverflow.com/questions/17897044/wordpress-how-to-disable-plugin-update

SO网友:Andrew

根据wp admin/update,假设您仍在计划自己更新插件,但不希望其他用户能够这样做。php您可以从用户处吊销“update\\u plugins”权限,以防止出现这种情况。他们将收到一条wp\\U die消息“抱歉,不允许您更新此网站的插件。”

对于权限管理,您可以使用User Role Editor 或类似。

相关推荐

Ajax-action.php找不到添加的操作

尊敬的Wordpress插件开发人员同事:,我目前正在开发一个WordPress定制预订插件。在这个插件中,我添加了一个日历短代码,它在页面上嵌入了一个Html月历。我还添加了一些Jquery,当用户单击相应的按钮时,这些Jquery应该会得到上个月或下个月的日历。jquery向管理ajax发送post请求。php,这将触发一个添加的ajax操作。唯一的问题是管理ajax。php返回400,这意味着它找不到操作。我知道会触发Wp\\u Lbs\\u日历的构造函数(这意味着必须添加操作),因为show函数成