Administration: Correct and simplify the logic for asc and desc arguments in WP_List_Table::get_sortable_columns().

Setting the initial order didn't work as expected due to reversed logic.

Follow-up to [48151].

See #45089.

git-svn-id: https://develop.svn.wordpress.org/trunk@48165 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Sergey Biryukov
2020-06-25 11:33:23 +00:00
parent b318e97530
commit 72c7f2c41c
2 changed files with 11 additions and 7 deletions
@@ -1170,9 +1170,9 @@ class WP_List_Table {
$class[] = 'sorted';
$class[] = $current_order;
} else {
if ( in_array( strtolower( $desc_first ), array( 'desc', 'asc' ), true ) ) {
$order = 'asc' === strtolower( $desc_first ) ? 'desc' : 'asc';
} else {
$order = strtolower( $desc_first );
if ( ! in_array( $order, array( 'desc', 'asc' ), true ) ) {
$order = $desc_first ? 'desc' : 'asc';
}
@@ -1180,7 +1180,11 @@ class WP_List_Table {
$class[] = 'desc' === $order ? 'asc' : 'desc';
}
$column_display_name = '<a href="' . esc_url( add_query_arg( compact( 'orderby', 'order' ), $current_url ) ) . '"><span>' . $column_display_name . '</span><span class="sorting-indicator"></span></a>';
$column_display_name = sprintf(
'<a href="%s"><span>%s</span><span class="sorting-indicator"></span></a>',
esc_url( add_query_arg( compact( 'orderby', 'order' ), $current_url ) ),
$column_display_name
);
}
$tag = ( 'cb' === $column_key ) ? 'td' : 'th';