Peut-être que quelqu'un sait comment lier l'inscription WooCommerce et l'enregistrement wordpress? Par exemple, l'utilisateur doit avoir la possibilité de publier des publications, etc. Le problème est que le panneau d'administration standard se cache lorsque l'utilisateur se connecte.Affichage du backend WordPress au rôle d'utilisateur du client WooCommerce
Répondre
Ceci est pour rôle d'utilisateur WooCommerce Customer
seulement:
ici vous avez les fonctions accroché à articles pour faire ce que vous regardez. Cela permettra à l'utilisateur utilisateur d'accéder à wordpress backend et de publier/éditer des messages (avec cette dernière fonctionnalité, vous devez prendre soin comme customer
le rôle de l'utilisateur aura la possibilité d'ajouter/modifier/publier des messages, alors sauvegardez votre base de données avant.
Voici le code:
add_filter('woocommerce_disable_admin_bar', '_wc_disable_admin_bar', 10, 1);
add_filter('woocommerce_prevent_admin_access', '_wc_prevent_admin_access', 10, 1);
function _wc_prevent_admin_access($prevent_admin_access) {
$user_data = get_userdata(get_current_user_id());
$user_roles = $user_data->roles;
$customer_role = get_role('customer');
// For "customer" WooCommerce user role only
if (in_array('customer', $user_roles)) {
// Warning! with this (This will be definitive, so make a database backup)
// Adding 'add_post', 'publish_posts' and 'edit_post' capabilities to customer user role
if (!user_can(get_current_user_id(), 'publish_posts')){
$customer_role->add_cap('create_posts');
$customer_role->add_cap('publish_posts');
$customer_role->add_cap('edit_posts');
}
// Giving access to wordpress backend
return false;
}
}
Le code va dans le fichier function.php de votre thème enfant actif (ou le thème) ou encore dans un fichier de plug-in.
Ce code a été testé et fonctionne
Vous pouvez modifier le rôle par défaut pour les nouveaux utilisateurs sous Paramètres> Général> Nouveau rôle utilisateur par défaut ou, vous pouvez le configurer par programme en utilisant cet extrait (ceci surpassera l'option définie dans les paramètres WP):
add_filter('pre_option_default_role', function($default_role){
return 'subscriber'; //Change this to fit your needs
});
NB: Un abonné n'a pas la possibilité de publier des messages. – helgatheviking