Problemer med get_categories() og sortering på ÆØÅ

clinton4

Medlem
Hei,

Jeg prøver å sortere alfabetisk med get_categories('orderby' => 'name', 'order' => 'ASC')

Da får jeg: Å-A-B-C-D

Riktig skulle ha vært: A-B-C-D-Å

Noen som har en løsning på dette?
 

adeneo

Medlem
Det er jo bare et array, så du kan alltids sortere det selv, så er du sikker på at det blir riktig ?

PHP:
$cat = get_categories(); // hent de
usort($cat, "cmp");      // sorter de
print_r($cat) ;          // vis de

function cmp($cats,$b){
    $tegn = 'abcdefghijklmnopqrstuvwxyzæøå';
    $c1   = strtolower($cats->name);
    $c2   = strtolower($b->name);
    
    if($c1{0}==$c2{0}){
       $t = 1;
       while(isset($c1{$t}) && isset($c2{$t})){
          if($c1{$t}==$c2{$t}){
              $t++;
          }else{
              return (strpos($tegn,$c1{$t})<strpos($tegn,$c2{$t})) ? -1 : 1;
          }
       }
       return (isset($b{$t})) ? -1 : 1;
    }
    else{
       return (strpos($tegn,$c1{0})<strpos($tegn,$c2{0})) ? -1 : 1;
    }
}
 
Topp