Функция, чтобы получить имя в таблице базы данных из строки разделенной запятой

wordpress.stackexchange https://wordpress.stackexchange.com/questions/162969

Вопрос

Я уже создал столбец администратора в WP, используя этот код:

add_filter('manage_pages_columns', 'page_custom_cols', 10);
function page_custom_cols($pages_columns, $post_type) {
$pages_columns['user_group'] = 'User Group';
return $pages_columns;
}
.

Теперь я добавил функцию, чтобы получить идентификатор группы пользователей, это поле уже находится в таблице WP_Post, но в разделе «Отделенный запятой», как это: «1,7,2», и я смог отобразить его с помощью этой функции:

add_action('manage_pages_custom_column', 'display_page_custom_cols', 10, 2);
function display_page_custom_cols($col_name, $post_id) {
if ('user_group' == $col_name) {
    $pages = get_post($post_id);
    echo $pages->group_access;
}
}
.

И это было отображаться сейчас: http://sreencast.com/t/z1uj3kinkln >

Моя проблема прямо сейчас Я хочу отобразить имя пользователя, а не идентификатор Это было в таблице «Custom_user_Group»: http://screencast.com/t/stbmvbfd0 >

Пожалуйста, помогите.

Это было полезно?

Решение

не проверено, но это должно работать:

add_action('manage_pages_custom_column', 'display_page_custom_cols', 10, 2);
function display_page_custom_cols($col_name, $post_id) {
  global $wpdb;
  $user_group = $wpdb->get_results("SELECT * From custom_user_group",OBJECT_K); 
  if ('user_group' == $col_name) {
    $pages = explode(',',get_post($post_id));
    $output = array();
    foreach ($pages as $page ) {
        $output[] = $user_group[$page]->GroupName;
    }
    echo implode(',',$output);
  }
}
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с wordpress.stackexchange
scroll top