- Status
- Offen
- Zugehöriges Plugin/Theme
- The Events Calendar
- Themen-Tags
- Compatibility
Übersicht über das Problem
Wenn Sie das Plugin The Events Calendar und dessen Funktion Integrate events in main blog loop verwenden, werden Sie feststellen, dass die Stammseite leer angezeigt wird, wenn ein Parameter zur URL hinzugefügt wird (example.com?foo=bar). Dieses Problem tritt speziell dann auf, wenn die WPML-Einstellung Verzeichnis für Standardsprache verwenden ebenfalls aktiviert ist.
Problemumgehung
Bitte stellen Sie sicher, dass Sie ein vollständiges Backup Ihrer Website haben, bevor Sie fortfahren.
- Öffnen Sie die Datei …/wp-content/plugins/the-events-calendar/src/Tribe/Query.php.
- Suchen Sie nach Zeile 577.
- Ersetzen Sie:
protected static function add_post_type_to_query( WP_Query $query, string ...$post_types ): void { $query_post_types = self::get_query_post_types( $query ); $updated_post_types = array_unique( array_merge( $post_types, $query_post_types ) ); $query->set( 'post_type', $updated_post_types ); $query->query['post_type'] = $updated_post_types; } - Durch:
protected static function add_post_type_to_query( WP_Query $query, string ...$post_types ): void { $query_post_types = self::get_query_post_types( $query ); // WPML Workaround for compsupp-7426 if ( class_exists('Sitepress') ) { $is_root_enabled = apply_filters( 'wpml_sub_setting', false, 'urls', 'directory_for_default_language' ); if ( $is_root_enabled && is_home() ) { return; } } $updated_post_types = array_unique( array_merge( $post_types, $query_post_types ) ); $query->set( 'post_type', $updated_post_types ); $query->query['post_type'] = $updated_post_types; }