Disappeared dashboard from vendor

Guys. Disappeared dashboard from vendor, doesn’t show under any conditions. I can’t figure out what’s wrong. Can you tell me what to look for?

the wordpress pages are all in place
I found the reason. This snippet.

add_filter(
	'hivepress/v1/menus/user_account',
	function( $menu ) {
		unset( $menu['items']['vendor_dashboard'] );

		return $menu;
	},
  1000
);

But before it worked, the users didn’t get the dashboard, but the vendors did. Can it be because the seller works under the attribute “company”, but in the users he is under his nickname and the script thinks that he is a user and therefore does not show the dashboard?

Why I decided to disable it for users! The problem was that when the user clicked to create a service, they automatically got the dashboard. Although he didn’t have access to the sellers yet as he hadn’t filled out the form.

Might there be some other way around this problem or change this snippet?

Yes, this snippet’s purpose is used exactly for removing the Dashboard page from the account menu. Only vendors (users with at least 1 approved listing) get this Dashboard page, regular users like buyers don’t have it by default.

Hi,Yevhen. But then how to get rid of the fact that the buyer when you click to create an ad, automatically gets the dashboard, not even filling out a profile, but just leaving this page.

Yes he won’t be able to submit ads until he fills out his profile, but he will have the dashboard showing all that time.

And one more situation:

  1. Generic question in the request, when the seller responds to the request, the user gets an “accept the offer” button, where he is immediately sent to buy it. Is it possible to have an option to “contact the seller” next to this button, i.e. the one who responded to the request, instead of immediately buying the seller’s offer? Because the user would like to discuss details of the offer he was interested in.

At the moment this works, but only if on the page with active query offers, first click on the seller’s name and then on his page only you can write to him, this is not very convenient when working with query offers.

Also, the user does not get a message on the site that he received an offer. Only to the email. It would be nice if the notification also came on the site.

  1. With personal requests - when a user sends a personal request, the seller receives a link to the mail, but it is not displayed in his profile in any way. After clicking on the link, you must accept the request and then it will be displayed in the profile as accepted (replied). The user receives the merchant’s offer in his requests. Again, he can only buy it, but cannot write a counteroffer to the seller. 2nd when this snippet is enabled:
add_filter(
	'hivepress/v1/models/request/attributes',
	function( $attributes ) {
		unset($attributes['budget']);

		return $attributes;
	},
	1000
);

the user cannot accept the seller’s offer because there is no base price in the request. Even if the seller has indicated the price in the offer. How can this be fixed. I want to disable displaying price in queries and the user doesn’t assign a price. But when the seller has put a price in the bid, the payment when I click on “accept bid” works and doesn’t give an error during checkout.

Thank you for your work:)

This issue seems to have been solved, with the help of these snippets.

  1. Now the dashboard does not appear to ordinary users if they click on the direct link to register a vendor and then exit the settings.
  2. The Listing Service button is only visible to vendors, so as not to confuse users. To register vendors has a separate link in the drop-down menu list.
add_filter("body_class", function($classes) {
    if(is_user_logged_in()) {
        foreach (wp_get_current_user()->roles as $user_role) {
            $classes[] = "role-{$user_role}";
        }
    }
    return $classes;
});
<style>
body:not(.logged-in) .hp-menu__item--listing-submit {
	display:none;
	}
.role-subscriber .hp-menu__item--listing-submit {
	display:none !important;
	display:block;
	}
</style>

Is this a normal solution?Or perhaps a better one?

If users get the Dashboard page even without getting at least 1 listing approved this may be a bug, please let me know if this issue occurs without customizations and third-party plugins, you can also send the steps to reproduce it. If there’s a bug we’ll fix it in the next update.

  1. This would require code customizations (in the offer_view_block template), but we’ll try to improve the offer layout UX in future updates, thanks.
  2. Please try using this one instead Hide the budget field from the request form #hivepress #requests · GitHub Then the Budget field should remain for the requests, but it will be removed from the form. The bidding functionality should be ok then.

Yes, the snippets you posted for hiding buttons depending on the user role seem to be ok.

Thank you, Yevhen. Ok, I’ll try to check without plugins and snippets.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.