elementor 模块输出错误的作者 ID
Wrong author ID output from elementor module
我为 elementor 创建了一个模块。我需要显示作者姓名,从 elementor 管理控件中选择。
我有 4 个管理员。它们正确显示在控制面板上:
- admin (ID=0.)
- Jhon Doe (ID=1.)
- 无名氏 (ID=3.)
- 小李 (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/
我为 elementor 创建了一个模块。我需要显示作者姓名,从 elementor 管理控件中选择。 我有 4 个管理员。它们正确显示在控制面板上:
- admin (ID=0.)
- Jhon Doe (ID=1.)
- 无名氏 (ID=3.)
- 小李 (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/