【问题标题】:Get user metadata and display in WP_List_Table获取用户元数据并在 WP_List_Table 中显示
【发布时间】:2014-06-13 15:35:35
【问题描述】:

我正在尝试获取用户元数据,在这种情况下,我将从 WP_List_Table 类中找到用户名或用户名或姓氏。因为我有一个名为 users_id 的字段,我在其中存储了 wp_users.ID 值,所以我在函数 get_sql_results() 中执行此操作:

private function get_sql_results()
{
    global $wpdb;

    $search = ( isset($_REQUEST['s']) ) ? $_REQUEST['s'] : false;
    $do_search = ( $search ) ? " WHERE firstname LIKE '%$search%' OR lastname LIKE '%$search%' OR foid LIKE '%$search%' OR no_frequent LIKE '%$search%' " : '';

    $args = array('id', 'firstname', 'lastname', 'foid', 'no_frequent', 'users_id', 'create_time');
    $sql_select = implode(', ', $args);
    $sql_results = $wpdb->get_results("SELECT " . $sql_select . " FROM " . $wpdb->prefix . "ftraveler $do_search ORDER BY $this->orderby $this->order ");

    return $sql_results;
}

所以我到了users_id。然后在函数get_columns() 中显示如下值:

public function get_columns()
{
    $columns = array(
        'id' => __('ID'),
        'users_id' => __('WP User'),
        'firstname' => __('Firstname'),
        'lastname' => __('Lastname'),
        'foid' => __('Passport'),
        'no_frequent' => __('Frequent No'),
        'create_time' => __('Created on')
    );
    return $columns;
}

但是当我应该显示用户名或名字或姓氏时显示用户 ID,我的疑问来自哪里,我如何使用 get_user_metadata($user_id) 函数获得该值并显示在结果表中?

【问题讨论】:

    标签: php wordpress


    【解决方案1】:

    您必须迭代到 $sql_results 并将 users_id 替换为您的自定义 get_user_metadata($users_id)。比如:

    foreach( $sql_results as $key => $value ) {
        $new_value = do_something_with( get_user_metadata( $value->users_id ) );
        $sql_results[$key]->users_id = $new_value;
    }
    return $sql_results;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-11
      • 1970-01-01
      • 1970-01-01
      • 2021-09-30
      • 1970-01-01
      • 1970-01-01
      • 2021-04-22
      • 1970-01-01
      相关资源
      最近更新 更多