Soporte » Diseño – Temas y plantillas » Trabajar con usuarios

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • Hola Paco,

    Haz que se muestre el ID de usuario y que ese sea el número de socio. Es único, «no se puede editar» y no se repite.

    $numero_socio = current_user_id();

    Iniciador del debate paconarud16

    (@paconarud16)

    Gracias Jose, pero el numero de socio viene ya dado de otro lugar y no puede se el Id. Mil gracias por tu ayuda

    ¿Cómo has añadido ese campo al perfil del usuario? Si lo has hecho con tu propio código, compártelo, casi seguro que puedo ayudarte a que la edición la haga solo adminsitradores.

    Por ejemplo, se podría comprobar si el usaurio que está editando puede «editar usuarios» a través de la capacidad edit_users, que es una capacidad que de forma predeterminada solo tienen los administradores:

    add_action( 'show_user_profile', 'cyb_custom_profile_fields' );
    add_action( 'edit_user_profile', 'cyb_custom_profile_fields' );
    function cyb_custom_profile_fields( $user ) { ?>
    
        if( current_user_can( 'edit_users' ) ) {
             // Mostrar el input
        } else {
             // Mostrar el valor, no un input editable
        }
    
    }
    
    add_action( 'personal_options_update', 'cyb_save_custom_profile_fields' );
    add_action( 'edit_user_profile_update', 'cyb_save_custom_profile_fields' );
    function cyb_save_custom_profile_fields( $user_id ) {
    
        if ( ! current_user_can( 'edit_users' ) ) {
            return false;
         } else {
             update_usermeta( $user_id, 'my_custom_field', $_POST['my_custom_field'] );
        }
    
    }
Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • El debate ‘Trabajar con usuarios’ está cerrado a nuevas respuestas.