这并不是对插件本身的修改,它只是一种恢复已经完成的操作的方法。因此,要激活插件,有一个WordPress函数:
register_widget(\'Class_of_the_Widget\');
因为我们可以使用
unregister_widget()
功能,我们也可以对JetPack插件的小部件使用相同的功能。
进入/wp-content/plugins/jetpack/modules/widgets
, 您将得到大多数Jetpack插件都是从那里注册的,幸运的是,它们是按名称排序的(从版本2.9.3开始)。认为facebook-likebox.php
文件包含“Jetpack Facebook Like Box”小部件的小部件信息。
因此,其余部分与默认小部件隐藏相同,调用相同的内容:
// unregister jetpack widgets
function wpse140512_unregister_jetpack_widgets() {
//hide from the \'Editor\' only
if ( is_admin() && current_user_can(\'editor\') ) {
unregister_widget(\'WPCOM_Widget_Facebook_LikeBox\'); //Facebook Likebox
unregister_widget(\'Jetpack_Gravatar_Profile_Widget\'); //Gravatar Profile
}
}
add_action(\'widgets_init\', \'wpse140512_unregister_jetpack_widgets\', 11);
。。。等等但我如何才能获得这些“小部件类”?
打开所有这些小部件文件并从register_widget()
作用由于小部件是在类中注册的,因此可以在同一类中注销它们。
在一个实例中查找它们的更好方法是使用智能文本编辑器Find in Folder/Files 特色假设:
在Sublime文本中:使用菜单栏的查找»在文件中查找。。。(Ctrl+Shift+F),然后查找register_widget
并浏览jetpack
文件夹/plugins
在您的/wp-content
, 然后立刻找到他们但是这个过程几乎适用于所有情况,但有些小部件没有使用register_widget()
函数,在这种情况下,使用wp_register_sidebar_widget()
作用对于这些,您必须使用wp_unregister_sidebar_widget()
函数,但这次您在函数中传递了小部件ID,而不是小部件类。
所以,让我们旅行吧!:)