elementor 模块输出错误的作者 ID

Wrong author ID output from elementor module

我为 elementor 创建了一个模块。我需要显示作者姓名,从 elementor 管理控件中选择。 我有 4 个管理员。它们正确显示在控制面板上:

  1. admin (ID=0.)
  2. Jhon Doe (ID=1.)
  3. 无名氏 (ID=3.)
  4. 小李 (ID=5.)

Elementor 管理面板的代码:

 <php 
 //Get all author
 $blogusers = get_users('blog_id=1&orderby=nicename&role=Administrator');
 foreach ($blogusers as $user) {

$author_list[] = $user->user_nicename; }

        $this->add_control(
            'my_authorname',
                [
                    'label'       => __( 'From AUTHOR', 'my_authorname-for-elementor' ),
                    'type' => Controls_Manager::SELECT, 
                    'options' => $author_list,
                    'default' => 'admin'
                ]
        ); ?>   
    

当我从 Elementor 控件管理员中选择 Jeane Doe 时,首页上的输出显示错误的作者 ID(1,而 Jeane Doe ID 为 3)。不是我需要的作者姓名。

输出代码:

 <?php echo $settings['my_authorname'];  ?>

非常感谢您的帮助。

改变

$author_list[] = $user->user_nicename;

$author_list[$user->ID] = $user->user_nicename;

请参阅:此处的参数部分:https://developers.elementor.com/elementor-controls/select-control/