Zeigen Sie einmal eine Willkommensnachricht für eine bestimmte Benutzerrolle an

Ich möchte einen Hinweis oder eine Willkommensnachricht nur anzeigen, wenn ein Benutzer (mit einer bestimmten Rolle) eine bestimmte Seite besucht.

Ich werde Abonnements verkaufen und jeder Benutzer (er muss sich vorher einloggen um die Mitgliedschaft zu kaufen) mit einem Abonnement erhält eine spezielle Rolle und eine neue spezifische Homepage. Ich möchte einen Hinweis auf dieser spezifischen Seite nur anzeigen, wenn der Benutzer mit seiner neuen Benutzerrolle ihn das erste Mal besucht.

Solutions Collecting From Web of "Zeigen Sie einmal eine Willkommensnachricht für eine bestimmte Benutzerrolle an"

Behalte einen Nutzer-Meta, wenn du bereits eine Willkommensnachricht an einen Nutzer gezeigt hast.

function get_current_user_role( $user_id = false, $translated = false ) { global $wp_roles, $current_user; if( ! $user_id && ! is_user_logged_in() ) return false; if( is_user_logged_in() ) { $roles = $current_user->roles; } else if ( $user_id ) { $user = new WP_User( $user_id ); $roles = $user->roles; } $role = array_shift($roles); if( ! $translated ) { return isset( $wp_roles->role_names[$role] )? $role : false; } else { return isset( $wp_roles->role_names[$role] ) ? translate_user_role( $wp_roles->role_names[$role] ) : false; } } function show_welcome_message_once() { global $current_user; if( is_user_logged_in() && get_current_user_role() == "specific-user-role" ) { $isWelcomeShown = (bool) get_user_meta( $current_user->ID, "is_message_shown", true ); if( ! $isWelcomeShown ) { // update user meta and return the welcome message update_user_meta( $current_user->ID, "is_message_shown", true ); return "your welcome message"; } } } 

Verwenden Sie diese function in Ihrer Seite, auf der Sie die Nachricht anzeigen möchten.