esc_html__('在文章/帖子侧栏显示当前内容作者信息。', 'aksrt'), 'classname' => 'widget_aksrt_author_card', ] ); } public function widget($args, $instance): void { $author_id = 0; if (is_singular()) { $post = get_queried_object(); if ($post instanceof \WP_Post) { $author_id = (int) $post->post_author; } } if ($author_id <= 0 && !empty($instance['user_id'])) { $author_id = (int) $instance['user_id']; } if ($author_id <= 0) { return; } $user = get_userdata($author_id); if (!$user) { return; } $show_bg = !isset($instance['show_img_bg']) || !empty($instance['show_img_bg']); $show_stats = !isset($instance['show_stats']) || !empty($instance['show_stats']); $avatar = function_exists('aksrt_get_avatar_url') ? aksrt_get_avatar_url($author_id, ['size' => 120]) : get_avatar_url($author_id, ['size' => 120]); $home = function_exists('aksrt_get_user_home_url') ? aksrt_get_user_home_url($author_id) : get_author_posts_url($author_id); $bio = get_user_meta($author_id, 'description', true); if (!is_string($bio) || $bio === '') { $bio = (string) $user->description; } $cover = (string) get_user_meta($author_id, 'aksrt_background_image', true); if ($cover === '') { $cover = get_theme_file_uri('assets/img/person_background.png'); } $post_count = count_user_posts($author_id, 'post', true); $followers = 0; if (class_exists('\AKSRT\User\Follow')) { $followers = \AKSRT\User\Follow::get_instance()->get_follower_count($author_id); } $name_html = function_exists('aksrt_get_user_name') ? aksrt_get_user_name(['id' => $author_id, 'follow' => false, 'class' => 'flex ac jc']) : '' . esc_html($user->display_name) . ''; echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped $card_cls = 'aksrt-author-card user-card author' . ($show_bg ? ' has-cover' : ''); echo '