• Resuelto alvima

    (@alvima)


    Hola,

    Tengo una duda. Llevo poco tiempo modificando código, asi que algunos conceptos de wordpress no me resultan muy familiares.

    Tengo instalado en wordpress el woocommerce y wcvendors. Los clientes de la pagina no tienen acceso al backend. Solo tienen acceso al backend el administrador y los vendedores.

    La cuestion es que woocommerce crea en todos los perfiles:
    -una direccion de facturacion
    -una direccion de envio

    A mi no me interesan esos datos en los perfiles del administrador ni los vendedores, solo en los clientes.

    La cuestion es que los clientes pueden ver su perfil desde el frontend. Pero yo quiero modificar la vista que tiene el administrador de los clientes en el backend. Ya que el administrador puede acceder a los perfiles de todos los usuarios.

    Quisiera que cuando el administardor accediera al perfil de un cliente pudiera ver esos datos, la direccion de facturacion y la direccion de envio. Pero que solo le apareciera a los clientes. No en los perfiles del administrador ni vendedores.

    En el woocommerce usan los hooks:
    – show_user_profile
    – edit_user_profile
    – personal_options_update
    – edit_user_profile_update

    En un principio habia pensado en usar un if(user_can( $user, ‘customer’ )) en esos hooks, para que solo se ejecutara cuando el usuario es un cliente.

    Pero me di cuenta de que no funcionaba y no tenia sentido ya que el cliente nunca accede al backend. Como podria hacerse eso? El usuario conectado es el administrador pero esta viendo el perfil de un cliente.

    Gracias.

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • Moderador Mariano Perez

    (@mpcdigital)

    Puedes probar Adminimize – https://wordpress.org/plugins/adminimize/ que permite la vista que tienen los diferentes roles de usuario en el backend. A lo mejor te sirve.

    Iniciador del debate alvima

    (@alvima)

    Gracias por la respuesta. Al final modifique el fichero class-wc–admin-profile.php cambiando la función add_customer_meta_fields que se usan en los hooks:

    – show_user_profile
    – edit_user_profile

    Lo unico que hice fue modificar el if inicial, de manera que si el usuario no es cliente return.

    Ahora solo me aparece los datos de las direcciones en el perfil de los clientes.

    Mirare el plugin que me has aconsejado, puede ser util para probar cosas.

Viendo 2 respuestas - de la 1 a la 2 (de un total de 2)
  • El debate ‘modificar vista del perfil usuario backend de los clientes woocommerce’ está cerrado a nuevas respuestas.