показать поля пользователя cimy в users.php с помощью manage_users_columns

Я пытаюсь добавить код в свои темы functions.php, чтобы отображать поля, созданные с помощью плагина дополнительных полей Cimy для пользователей в панели инструментов users.php. Я знаю, что мне нужно использовать manage_users_columns, но помимо этого я застрял. Кто-нибудь достаточно знакомый с плагином, чтобы помочь мне отобразить правильные поля?

Solutions Collecting From Web of "показать поля пользователя cimy в users.php с помощью manage_users_columns"

Несколько мыслей, которые могут помочь вам или другим, читающим это …

FWIW, параметр приоритета не имеет эффекта, если у вас нет нескольких функций, которые вы прикрепляете к крючку. Таким образом, 15 или 1 или 9999 не имеет значения. Если вы считаете, что приоритет имеет отношение к порядку столбцов, это не так.

Кроме того, вы можете прикрепить функцию theme_column_userfield к hook_users_columns с помощью add_action … он работает одинаково в любом случае. то есть.,

add_action('manage_users_columns', 'theme_column_userfield'); 

работает одинаково.

Наконец, блок кода не содержит никакого порядка. Сделав этот путь, столбец будет добавлен в правую сторону таблицы. Если вам нужно вставить столбец где-то, вам нужно будет использовать немного или много array_slice и array_merge в зависимости от того, насколько вы просто / сложны / повторно используете.

Например, если вы использовали это …

  function add_new_column($column_headers) { // slice off the checkbox column $cb_col = array_slice($column_headers, 0, 1); // create the new column (you could add in translation if you want it) $new_col = array('new_column_name' => 'New User Column'); // stick it all back together $column_headers = array_merge($cb_col, $new_col, $column_headers); return $column_headers; } add_action('manage_users_columns', 'add_new_column'); function output_new_column($value, $column_name, $id) { if($column_name == 'new_column_name') { // add some code here to print out whatever value you want in whatever style you're after } } add_action('manage_users_custom_column', 'output_new_column', 1, 3); 

… «Новая колонка пользователя» появится сразу после флажка в списке «Пользователи», а затем остальные столбцы по умолчанию.

Я взломал свой путь, чтобы понять это. Вот код для справки:

 function theme_column_userfield( $defaults ) { $defaults['theme-usercolumn-userfield'] = __('fieldname', 'user-column'); return $defaults; } function theme_custom_column_userfield($value, $column_name, $id) { if( $column_name == 'theme-usercolumn-userfield' ) { return get_cimyFieldValue($id, 'fieldname'); } } add_action('manage_users_custom_column', 'theme_custom_column_userfield', 15, 3); add_filter('manage_users_columns', 'theme_column_userfield', 15, 1);