- Status
- Vom Autor gelöst
- Gemeldet für
- WPML Multilingual for BuddyPress and BuddyBoss 1.7.0
- Zugehöriges Plugin/Theme
- BuddyBoss Platform
- Themen-Tags
- Compatibility
Ü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
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;