enabled()) { $columns['aksrt_user_level'] = __('用户等级', 'aksrt'); } return $columns; } public function render_column(string $output, string $column_name, int $user_id): string { if ($column_name !== 'aksrt_user_level' || !$this->enabled()) { return $output; } $level = Level::get_level($user_id); $icon = $this->render_badge($level); return '' . '' . $icon . '' . esc_html(Level::get_level_name($level)) . '' . '' . esc_html((string) Level::get_integral($user_id)) . ' EXP' . ''; } public function sortable_columns(array $columns): array { if ($this->enabled()) { $columns['aksrt_user_level'] = 'aksrt_user_level'; } return $columns; } public function sort_users($query): void { if (!is_admin() || $query->get('orderby') !== 'aksrt_user_level') { return; } $query->set('meta_key', Level::META_INTEGRAL); $query->set('orderby', 'meta_value_num'); } public function add_row_action(array $actions, \WP_User $user): array { if ($this->enabled() && $this->can_manage((int) $user->ID)) { $url = get_edit_user_link((int) $user->ID); if ($url) { $actions['aksrt_edit_level'] = '' . esc_html__('调整等级经验', 'aksrt') . ''; } } return $actions; } public function render_section(\WP_User $user): void { if (!$this->enabled()) { return; } $progress = Level::get_progress((int) $user->ID); $can_manage = $this->can_manage((int) $user->ID); ?>
| render_badge((int) $progress['level']); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?> | |
| ID, 'aksrt_user_level_nonce'); ?> | |