cum să elimin unele permisiuni pentru rolul de "manager magazin" în WooCommerce
Folosesc plugin-ul WooCommerce pentru a gestiona un magazin. Am nevoie să adaug un utilizator care poate gestiona produsele (adaugă noi, editează). Așadar, am adăugat un utilizator și i-am atribuit rolul de manager magazin, dar permisiunile acordate pentru acest rol sunt mult mai multe decât ceea ce doream (de ex., listarea altor utilizatori, accesarea comenzilor, posibilitatea de a modifica setările magazinului și altele).
Și nu pot să înțeleg cum WordPress gestionează rolurile și permisiunile și în ce fișier PHP WooCommerce definește acest rol, ca să-l pot edita.

Acest subiect se apropie de a fi considerat off-topic, deoarece se referă în mod specific la un anumit plugin, dar răspunsul este destul de generic:
Puteți elimina capabilitățile de care nu aveți nevoie.
function remove_cap_wpse_186316(){
remove_cap( 'yourwoorole', 'yourwoocap' );
remove_cap( 'yourwoorole', 'yourwoocap1' );
}
add_action( 'admin_init', 'remove_cap_wpse_186316' );
Codul de mai sus este doar pentru demonstrație/experimentare. Rețineți observația din codex despre faptul că acest cod trebuie rulat o singură dată:
Notă: Această setare este salvată în baza de date (în tabelul wp_options, câmpul 'wp_user_roles'), așa că ar trebui să-l rulați doar o singură dată, la activarea/dezactivarea temei/pluginului.
Puteți folosi get_role()
și să afișați rezultatul pentru a vedea cu ce capabilități aveți de-a face:
var_dump(get_role( 'yourwoorole' ));

Te rugăm să adaugi următorul cod în fișierul functions.php al temei tale WordPress. Schimbă valoarea true în false pentru permisiunile pe care nu dorești să le accezi managerului de magazin.
add_role('shop_manager', __('Manager Magazin', 'woocommerce'), array(
'read' => true,
'read_private_pages' => true,
'read_private_posts' => true,
'edit_posts' => true,
'edit_pages' => true,
'edit_published_posts' => true,
'edit_published_pages' => true,
'edit_private_pages' => true,
'edit_private_posts' => true,
'edit_others_posts' => true,
'edit_others_pages' => true,
'publish_posts' => true,
'publish_pages' => true,
'delete_posts' => true,
'delete_pages' => true,
'delete_private_pages' => true,
'delete_private_posts' => true,
'delete_published_pages' => true,
'delete_published_posts' => true,
'delete_others_posts' => true,
'delete_others_pages' => true,
'manage_categories' => true,
'manage_links' => true,
'moderate_comments' => true,
'unfiltered_html' => true,
'upload_files' => true,
'export' => true,
'import' => true,
'manage_woocommerce' => true,
'manage_woocommerce_orders' => true,
'manage_woocommerce_coupons' => true,
'manage_woocommerce_products' => true,
'view_woocommerce_reports' => true
));
