Überprüfen Sie, ob das Widget aktiv ist

Ich habe zwei benutzerdefinierte Widgets eine Search_Widget_Page, die mit dem folgenden Code erstellt wird;

class Search_Widget_Page extends WP_Widget { /** * Register widget with WordPress. */ function __construct() { parent::__construct( 'Search_Widget_Page', __('Search Form - Pages', 'text_domain'), array( 'description' => __( 'Add a search form to a page, there must not be another search form in the side bar.', 'text_domain' ), ) // Args ); } 

Ich habe dann ein anderes ähnliches Widget, das in der Seitenleiste angezeigt werden kann, jedoch möchte ich nicht, dass es angezeigt wird, wenn das Widget oben auf der Seite verwendet wird. Ich habe den folgenden Code vergeblich versucht;

 public function widget( $args, $instance ) { if( is_active_widget( 'Search_Widget_Page' ) ) { // check if search widget is used Do not display this widget } else { Display this widget } 

Solutions Collecting From Web of "Überprüfen Sie, ob das Widget aktiv ist"

Gemäß dem Codex können Sie einige zusätzliche Parameter zu is_active_widget() hinzufügen, damit es funktioniert. Probieren Sie dieses also aus:

 if ( is_active_widget(false, false, 'Search_Widget_Page', true) ) { // check if search widget is used // Do not display this widget } else { // Display this widget }