【问题标题】:Removing Default Widgets in Wordpress删除 Wordpress 中的默认小部件
【发布时间】:2012-02-09 21:52:01
【问题描述】:

构建我的第一个 WP 主题,我很快意识到我需要删除所有默认小部件,因为我将构建自己的小部件。

所以我的问题是我的 function.php 文件中需要什么函数才能发生这种情况 =)

谢谢!

【问题讨论】:

    标签: php wordpress themes wordpress-theming widget


    【解决方案1】:

    我认为这是您要查找的代码:

    add_action( 'widgets_init', 'my_unregister_widgets' );
    
    function my_unregister_widgets() {
        unregister_widget( 'WP_Widget_Pages' );
        unregister_widget( 'WP_Widget_Calendar' );
        unregister_widget( 'WP_Widget_Archives' );
        unregister_widget( 'WP_Widget_Links' );
        unregister_widget( 'WP_Widget_Categories' );
        unregister_widget( 'WP_Widget_Recent_Posts' );
        unregister_widget( 'WP_Widget_Search' );
        unregister_widget( 'WP_Widget_Tag_Cloud' );
    }
    

    【讨论】:

    【解决方案2】:

    这是一个更好的解决方案。

    remove_action( 'init', 'wp_widgets_init', 1 );
    add_action( 'init', function() {  do_action( 'widgets_init' ); }, 1 );
    

    这是未来的证明,比让 WordPress 注册它们然后取消注册它们更好。此解决方案甚至可以防止注册默认小部件。

    【讨论】:

      猜你喜欢
      • 2014-04-15
      • 1970-01-01
      • 2013-06-04
      • 2023-03-30
      • 2012-12-16
      • 1970-01-01
      • 2013-06-20
      • 2019-11-28
      • 1970-01-01
      相关资源
      最近更新 更多