Zobrazení widgetů jen na vybraných stránkách

V případě, že máte v sidebaru widget, který chcete zobrazit jen na určité stránce, tak si buď vytvoříte speciální sidebar pro určitou stránku a do něj budete znovu vkládat widgety, včetně toho, který chcete zobrazit, nebo využijete filtru widget_display_callback. Díky tomu tak můžete mít widget,…

Obsah článku

Přidejte záhlaví a začněte generovat tabulku obsahu

V případě, že máte v sidebaru widget, který chcete zobrazit jen na určité stránce, tak si buď vytvoříte speciální sidebar pro určitou stránku a do něj budete znovu vkládat widgety, včetně toho, který chcete zobrazit, nebo využijete filtru widget_display_callback.

Díky tomu tak můžete mít widget, určený v tomto případě jen na stránku kontaktu, například kontaktní informace a ten se tak zobrazí právě na této jedné stránce.

add_filter( 'widget_display_callback', 'show_on_contact_page', 10, 3 );

function show_on_contact_page( $instance, $widget, $args ) {

  if ( $widget->id_base == 'jmeno widgetu' ) {
     if ( !is_page( 'kontakt' ) ) {
         return false;
     }
  }

}

Funkci opět umístěte do functions.php, nebo souboru, který do functions.php načítáte.