Zum Inhalt springen Zur Seitenleiste springen

Dieses Thema ist gelöst. Hier finden Sie eine Beschreibung des Problems und der Lösung.

Problem:
Wenn Sie das Plugin "Contact Form 7 Multilingual" aktivieren und auf den Seiten, wo ein Formular eingebunden ist, erscheint ein PHP-Fehler mit der Warnung: Undefined array key "title".
Solution:
Wir empfehlen Ihnen, die Lösung zu befolgen, die in unserem Errata-Artikel beschrieben ist. Bitte besuchen Sie https://wpml.org/errata/contact-form-7-php-warning-undefined-array-key-title/ für eine detaillierte Anleitung zur Behebung dieses Problems.

Dies ist das technische Support-Forum für WPML – das mehrsprachige WordPress-Plugin.

Mitlesen können alle, doch nur WPML-Kunden können hier Fragen veröffentlichen. Das WPML-Team antwortet im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.

Schlagwörter: 

Dieses Thema enthält 15 Antworten, hat 3 Stimmen.

Zuletzt aktualisiert von Marcel Vor 1 Jahr, 8 Monaten.

Assistiert von: Marcel.

Autor Beiträge
September 11, 2023 um 9:53 am #14374453

christianW-92

Hallo, bei der Aktivierung des Plugins "Contact Form 7 Multilingual" wird auf den Seiten, wo ein Formular eingebunden ist, folgender Fehler angezeigt:

Warning: Undefined array key "title" in /var/customers/webs/faircollect/html/wp-content/plugins/contact-form-7/includes/contact-form-functions.php on line 239

Wenn ich das Plugin wieder deaktiviere, ist die Warnung verschwunden.

September 11, 2023 um 12:58 pm #14376527

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Hallo,

danke für die Info. Der Fehler wird im Code von Contact Form 7 selbst ausgegeben. Es wird hier ein "trim" im Code ausgeführt: https://plugins.trac.wordpress.org/browser/contact-form-7/trunk/includes/contact-form-functions.php#L239.

Ich konnte es auf dieser Sandbox Installation als Notiz reproduzieren: versteckter Link. Wir werden dies an die Contact Form 7 Entwickler melden müssen. Ich melde mich, sobald wir weitere Details dazu haben.

Freundliche Grüße
Marcel

September 11, 2023 um 1:13 pm #14376615

christianW-92

Hallo, das wäre super. Ist es absehbar, wie lange das ungefähr dauern wird?

Viele Grüße

September 11, 2023 um 2:15 pm #14377063

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Hallo,

das können wir aktuell nicht abschätzen. Möglich, dass wir es mit einem Workaround temporär beheben können und somit kein Update von den CF7 Autoren notwendig ist.

Freundliche Grüße
Marcel

September 11, 2023 um 2:29 pm #14377275

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Hallo,

wir werden zuerst prüfen, ob dies ggf. über einen Code-Workaround temporär behoben werden kann. Wie lange dies jedoch dauert, kann ich Ihnen aktuell nicht sagen. Am besten deaktivieren Sie vorerst das PHP Debugging auf der betroffenen Seite über die wp-config.php. Es ist nur ersichtlich, wenn das WP Debugging aktiv ist.

Freundliche Grüße
Marcel

September 11, 2023 um 2:46 pm #14377471

christianW-92

Hallo, ich habe das WP Debugging deaktiviert, jedoch wird die Meldung immer noch auf der Webseite angezeigt.

Viele Grüße

September 11, 2023 um 2:49 pm #14377499

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Hallo,

das wäre technisch in WP nicht möglich: https://wordpress.org/documentation/article/debugging-in-wordpress/#:~:text=Setting%20this%20to%20false%20will%20hide%20all%20errors.

Auf der Sandbox ebenso nicht reproduzierbar. Ich vermute, Sie haben das Debugging zu früh/zu spät in der wp-config.php hinterlegt oder Ihr Hosting überschreibt Ihre Anpassungen bzw. ignoriert diese.

Freundliche Grüße
Marcel

September 11, 2023 um 2:51 pm #14377503

christianW-92

Hallo,

mit folgenden Zeilen funktioniert es:
define( 'WP_DEBUG', false );
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors',0);

Viele Grüße

September 11, 2023 um 2:53 pm #14377513

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Wie hatten Sie das Debugging deaktiviert?

September 11, 2023 um 2:56 pm #14377523

christianW-92

Hallo, ich hatte vorher nur "define( 'WP_DEBUG', false );" gesetzt gehabt.
Aber die letzte Zeile bringt das gewünscht Ergebnis.

September 11, 2023 um 2:58 pm #14377557

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Danke für die Info!

September 12, 2023 um 8:10 am #14381259

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Hallo,

Sie können es temporär damit beheben:

#1 Sichern Sie Ihre Seite

#2 Öffnen Sie wp-content/plugins/contact-form-7-multilingual/classes/shortcodes.php in \WPML\CF7\Shortcodes::translate_shortcode_form_id


		if ( ! $form && ! empty( $atts['title'] ) ) {
			$form = wpcf7_get_contact_form_by_title( trim( $atts['title'] ) );
			unset( $atts['title'] );
		}

Kommentieren Sie die Zeile unset( $atts['title'] ); aus, also

// unset( $atts['title'] );

Freundliche Grüße
Marcel

September 12, 2023 um 8:19 am #14381351

christianW-92

Hallo,

mit dem Workaround funktioniert es erst einmal. Aber es wird an einem Fix gearbeitet oder?

Viele Grüße

September 12, 2023 um 8:22 am #14381367

Marcel
Unterstützer

Sprachen: Englisch (English ) Spanisch (Español ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+02:00)

Hallo,

ja, wir werden dies in einem der nächsten Updates direkt über unseren Code in CF7 Multilingual lösen. Wir gehen Ihnen hier Bescheid, sobald diese Version verfügbar ist.

Freundliche Grüße
Marcel

September 18, 2023 um 5:56 am #14409099

szabolcsD-2

Hi all. This error is caused by the Contact Form 7 Multilingual – Translate Forms with WPML plugin.
https://wpml.org/documentation/related-projects/using-contact-form-7-with-wpml/
It was updated mounths ago, it is outdated.