Showing empty account pages and sending welcome email

Currently if there is no messages received, “message” menu does not show in the menu list of the vendor. I am getting many questions from newly joint customers about this as they dont find message menu and they dont understand how other users would communicate with them.

  1. How can I make message menu to always show in the overview even if it is empty and no messages are received (same for favorites, …)
  2. How can I send standard email to every new joiner to welcome them to the website (this way they will also get a feeling how the message-ing works). same as google is doing when getting a gmail account

Hi,

  1. Unfortunately, there’s no simple code snippet to set it up. However, we tried to make HivePress as intuitive as possible, and when a new message is received - the menu item will appear in the profile dashboard.

  2. It should work like this by default. Please check these articles to make sure that everything is set up in the proper way.

regarding the 2nd point - I meant how to send new joined user default message (not email). Which could be workaround for this situation as it will show message menu in the profile and user will understand where to find messages

Please try this PHP snippet but please note that it can require further customization. If you are not familiar with the code customization then please consider hiring someone for custom work https://fvrr.co/32e7LvY

add_action(
	'hivepress/v1/models/user/register',
	function($user_id, $values){
		$admin_email = get_option('admin_email');
		
		if(!$admin_email){
			return;
		}
		
		$user = \HivePress\Models\User::query()->filter(['email' => $admin_email])->get_first();
		
		if(!$user){
			return;
		}
		
		( new \HivePress\Models\Message() )->fill(
			[
				'sender'               => $user->get_id(),
				'sender__display_name' => $user->get_display_name(),
				'sender__email'        => $user->get_email(),
				'recipient'            => $user_id,
				'read'                 => 0,
				'text' => 'Your custom text',
			]
		)->save();
	},
	1000,
	2
);

Thanks Yevhen! - it works !!