Entfernen Sie die Registrierung der Seitenleiste von Child-Theme

Ich benutze gerne ein Kind-Thema.

Die Eltern functions.php

function starkers_widgets_init() { // Area 1, located at the top of the sidebar. register_sidebar( array( 'name' => __( 'Primary Widget Area', 'starkers' ), 'id' => 'primary-widget-area', 'description' => __( 'The primary widget area', 'starkers' ), 'before_widget' => '
  • ', 'after_widget' => '
  • ', 'before_title' => '

    ', 'after_title' => '

    ', ) ); // Area 2 ...

    Mein Kind-Thema functions.php

     function xtreme_unregister_sidebar() { unregister_sidebar('primary-widget-area'); } add_action( 'childtheme_sidebars', 'xtreme_unregister_sidebar' ); 

    Aber funktioniert nicht für.
    Vielen Dank

    Solutions Collecting From Web of "Entfernen Sie die Registrierung der Seitenleiste von Child-Theme"

    Überprüfen Sie den Code unten, ich denke, das sollte funktionieren.

     add_action( 'after_setup_theme', 'remove_default_sidebars', 11 ); function remove_default_sidebars(){ remove_action( 'widgets_init', 'starkers_widgets_init' ); } 

    Der Titel dieses Posts ist für das Aufheben der Registrierung von Widgets nicht wirklich Sidebars, obwohl ich froh bin, dass der Benutzer bekommen hat, wonach sie gesucht haben. Wenn Sie herausfinden möchten, wie Sie Widgets mithilfe eines untergeordneten Themas, bei dem das Widget im übergeordneten Thema registriert wurde, abmelden möchten, können Sie Folgendes tun:

    Angenommen, das Widget des übergeordneten Themas ist am Hook widgets_init registriert, müssen Sie nur den Aufruf unregister_widget () innerhalb einer function umbrechen, diese function in widgets_init haken und Ihrem Hook eine höhere Prioritätsnummer geben als dem widgets_init-hooked des übergeordneten Themes function.

    Unter der Annahme, dass sich das übergeordnete Thema in widgets_init einklinkt, ohne eine Prioritätsnummer anzugeben, wird die function standardmäßig auf 10 gesetzt. Geben Sie Ihrem Hook-Aufruf also eine Priorität von 11 oder höher.

    so etwas wie das:

     add_action( 'widgets_init', 'remove_theme_widgets', 11 ); function remove_theme_widgets() { unregister_widget('parent_theme_widget_class'); } 

    Source