Зарезервированные ключи для мета пользователя в WordPress - Обо мне
Кто-нибудь знает, какие мета-ключи зарезервированы (что я не могу использовать для своих собственных целей) в WordPress, если таковые имеются?
Кроме того, для WordPress обо мне разделе. Кто-нибудь знает, как это назвать?
Заранее спасибо.
1 ответ
Post Meta Keys:
Вы, вероятно, не хотите использовать следующие мета- ключипоста:
_thumbnail_id
- Используется для хранения идентификатора выбранного изображения_edit_last
- ИспользуетсяAPI Heartbeat_edit_lock
- ИспользуетсяAPI Heartbeat_wp_page_template
- Хранит шаблон страницы._wp_attached_file
_wp_attachment_metadata
_menu_item_{url, object, object_id, target, classes, xfn, ... }
в качестве пользовательских мета-ключей, поскольку они могут быть перезаписаны ядром WordPress.
Пользовательские мета-ключи:
Аналогично для этихпользовательских мета- ключей:
first_name
last_name
nickname
description
rich_editing
comment_shortcuts
admin_color
jabber
aim
yim
default_password_nag
use_ssl
show_admin_bar_front
show_welcome_panel
dismissed_wp_pointers
nav_menu_recently_edited
managenav-menuscolumnshidden
closedpostboxes_{post, dashboard, page, ...}
metaboxhidden_{post, dashboard, page, ...}
meta-box-order_{post, dashboard, page, ...}
screen_layout_{post, dashboard, page, ...}
и следующие мета-ключи пользователя, которые имеют префикс таблицы по умолчанию:
wp_capabilities
wp_user_level
wp_dashboard_quick_press_last_post_id
wp_user-settings
wp_user-settings-time
В общем, я бы предложил вам использоватьпрефиксы собственных мета-ключей, чтобы избежать конфликтов с ядром WordPress или другими плагинами или темами.
Как отобразить мета-ключи пользователя?
Если вы хотите отобразить все мета-ключи пользователя, для текущего пользователя вы можете использовать:
print_r( array_keys( get_user_meta( get_current_user_id() ) ) );
с выводом вроде:
Array
(
[0] => first_name
[1] => last_name
[2] => nickname
[3] => description
[4] => rich_editing
[5] => comment_shortcuts
[6] => admin_color
[7] => use_ssl
[8] => show_admin_bar_front
...cut...
)
Посетите страницу Кодекса, чтобы получить больше информации оget_user_meta()
функция.
Или просто исследовать ваш wp_usermeta
Таблица.
Простой плагин для просмотра метаданных для каждого пользователя:
Полезно иметь возможность просматривать метаданные для каждого пользователя, поэтому давайте создадим для этого простой плагин.
Вот скриншот с профиля пользователя / страницы редактирования:
и вот код:
<?php
/**
* Plugin Name: A Simple User Meta Data Viewer
* Description: This plugin allows the site admin to view the metadata for each user, in the edit user screen
* Author: birgire
* Version: 0.0.1
* Plugin URI: http://stackru.com/a/25316090/2078474
*/
add_action( 'show_user_profile', 'birgire_usermeta_list' );
add_action( 'edit_user_profile', 'birgire_usermeta_list' );
function birgire_usermeta_list( $profileuser )
{
if( current_user_can( 'manage_options' ) )
{
// Fetch all the user meta data for current profile user:
$items = get_user_meta( $profileuser->ID );
// Loop:
$rows = '';
foreach( $items as $key => $item )
{
$rows .= sprintf( '
<tr>
<th>%s</th>
<td><input type="text" value="%s" readonly="readonly" class="regular-text" /></td>
</tr>',
$key,
esc_attr( array_shift( $item ) )
);
}
// Output:
printf( '<h3>%s</h3><table class="form-table"><tbody>%s</tbody></table>',
__( 'User Meta' ),
$rows
);
}
}
Надеюсь, это поможет.