WPML

Übersicht über das Problem

Es gibt eine Inkonsistenz bei der alphabetischen Sortierung der übersetzten Taxonomie-Felder auf den Profilseiten von BuddyBoss. Während die Felder der Standardsprache korrekt sortiert sind, behalten die übersetzten Felder diese Reihenfolge nicht bei.

Problemumgehung

Dieses Problem ist behoben. Ein Update auf die neueste Version behebt dies auf Ihrer Website, daher benötigen Sie diese Problemumgehung nur, wenn Sie noch nicht aktualisieren können.

Bitte stellen Sie sicher, dass Sie über ein vollständiges Website-Backup verfügen, bevor Sie fortfahren.

  • Öffnen Sie die Datei …/wp-content/plugins/buddyboss-platform/bp-xprofile/classes/class-bp-xprofile-field-type-selectbox.php.
  • Ersetzen Sie in BP_XProfile_Field_Type_Selectbox::edit_field_options_html() die folgende Zeile:
    echo $html;
  • Durch:
    // WPML Workaround for compsupp-7514
    if ( class_exists('Sitepress') && apply_filters('wpml_default_language', NULL ) != apply_filters( 'wpml_current_language', NULL ) ) {
    	// Match all options
    	preg_match_all('/<option(.*?)>(.*?)<\/option>/s', $html, $matches, PREG_SET_ORDER);
    
    	// Extract the options into an array
    	$optionsArray = [];
    	foreach ($matches as $match) {
    		$optionsArray[] = [
    			'full' => $match[0],
    			'attributes' => $match[1],
    			'text' => $match[2],
    		];
    	}
    
    	// Sort the array by the 'text' element
    	usort($optionsArray, function($a, $b) {
    		return strcmp($a['text'], $b['text']);
    	});
    
    	// Rebuild the HTML string
    	$sortedHtml = '';
    	foreach ($optionsArray as $option) {
    		$sortedHtml .= sprintf('<option%s>%s</option>', $option['attributes'], $option['text']);
    	}
    
    	$html = $sortedHtml;
    }
    
    echo $html;

Alle bekannten Probleme

Tritt dieses Problem weiterhin auf?

Wenn das Update das Problem nicht behebt, stellen Sie eine Support-Anfrage und wir sehen uns das gemeinsam mit Ihnen an.