Taxonomie Begriffe sortieren nach … Nachname!

Ich habe eine benutzerdefinierte Taxonomie namens “Autoren”, wo ich zusätzliche Autoren einfügen. Meine Frage ist: Ist es möglich, alle Taxonomiebegriffe geordnet nach “Nachname” aufzulisten? Wenn ich namentlich bestelle, sieht es so aus:

  • Andrea Rot
  • Daniel Grün
  • Elena Blau

Stattdessen möchte ich nach Nachname sortieren:

  • Elena Blau
  • Daniel Grün
  • Andrea Rot

Hast du einen Ratschlag dafür? Ist es besser, ein neues benutzerdefiniertes Feld in Custom Taoxnomy hinzuzufügen, wo ich den Nachnamen angeben und dann nach diesem Begriff sortiere?

Vielen Dank

Elena

Solutions Collecting From Web of "Taxonomie Begriffe sortieren nach … Nachname!"

Sie können die MySQL-function SUBSTRING_INDEX() im get_terms_orderby Filter get_terms_orderby :

 /** * Order by the last word in the term name * @link https://wordpress.stackexchange.com/a/195039/26350 */ add_filter( 'get_terms_orderby', function( $orderby, $args ) { if( isset( $args['orderby'] ) && 'wpse_last_word' === $args['orderby'] ) $orderby = " SUBSTRING_INDEX( t.name, ' ', -1 ) "; return $orderby; }, 10, 2 ); 

nach dem letzten Wort in dem Begriff Namen zu bestellen.

Hier aktivieren wir die letzte Wortordnung durch unser benutzerdefiniertes Argument wpse_last_word :

 $terms = get_terms( 'category', [ 'orderby' => 'wpse_last_word' ] ); 

Sie können auch das Argument wpse_last_word über den Filter get_terms_args , wenn Sie eine Begriffsabfrage überschreiben müssen.

Ich habe diese Methode kürzlich für Posts verwendet.