对于问题的第一部分,可以向users表中添加新列。
它分为两个步骤:首先需要注册列,然后输出每行的信息。
要添加新列,可以将manage_users_columns
过滤器:
function yourdomain_manage_users_columns( $columns ) {
// $columns is a key/value array of column slugs and names
$columns[ \'custom_field\' ] = \'Custom Field\';
return $columns;
}
add_filter( \'manage_users_columns\', \'yourdomain_manage_users_columns\', 10, 1 );
然后需要使用
manage_users_custom_column
过滤器:
function yourdomain_manage_users_custom_column( $output, $column_key, $user_id ) {
switch ( $column_key ) {
// look for the slug you registered
case \'custom_field\' :
// get your custom field, parse it however you want
$value = get_user_meta( $user_id, \'custom_field\', true );
// return the value
return $value;
break;
default: break;
}
// if no column slug found, return default output value
return $output;
}
add_filter( \'manage_users_custom_column\', \'yourdomain_manage_users_custom_column\', 10, 3 );
对于用户激活:
也许WP\\u选项表不是最好的方式,因为它会快速增长,降低网站维护速度。
您可能希望为未激活的用户创建一个新的用户角色,并将其设置为默认角色;您可以通过管理界面轻松更改。
如果您是通过插件添加此代码,您可能会执行以下操作:
function yourdomain_add_user_role() {
// capabilities
$caps = array(
\'level_0\' => true, // inherit subscriber capabilities
\'read\' => false // but can\'t read posts, etc
);
// ads the inactive user role
add_role(
\'inactive\', // Role slug
\'Inactive Account\', // Role name
$caps // capabilities
);
}
register_activation_hook( __FILE__, \'yourdomain_add_user_role\' );
查看codex以获得用户角色和功能的(长)列表:
https://codex.wordpress.org/Roles_and_Capabilities希望有帮助!