Splitting Hivepress account dashboard from Woocommerce dashboard


We have an e-shop running on Woo and we’re looking to add additional classifieds functionality.

Currently the Hivepress account dashboard ended up in the Woo ‘Orders’ section, breaking our account dashboard flow. Moreover, we use ‘Orders’ for other things.

Is it possible to remove it from the Woo ‘My account’ completely and put it on a separate page via a shortcode or something similar, or at least move it to another Woo endpoint, e.g. downloads?

I tried changing the endpoints in /hivepress/includes/components/class-woocommerce.php but that only broke the site.

Yes, HivePress merges the Orders page into its account page because it uses WooCommerce in many extensions (Claim Listings, Paid Listings, Memberships, Marketplace). It’s possible to unmerge it, but this requires code customizations - please consider using it as is, and add the WooCommerce account page separately if required (e.g. to the main menu), this way users will be able to check the store-related account pages.

The problem is that when the user goes to the orders section they get taken to a completely different dashboard that also has a different design. Everything is fine regarding the other pages and the menu itself, except for the fact that we lost the Orders page.

Currently we are not using any of the features that require user to pay. In the wordpress forum I saw that you have a code snippet for such cases, that kind of disables them? Could you please provide it? Then we would just move other hivepress links elsewhere.

If that only disables the paid functions but still won’t return us the orders page, could you please tell us which files to edit to achieve it?

The Orders page layout is replaced with the HivePress one here hivepress/class-woocommerce.php at master · hivepress/hivepress · GitHub so removing this callback may actually work. Please try this code snippet:

add_action('init', function() {
    if(function_exists('hivepress')) {
        remove_filter( 'wc_get_template', [ hivepress()->woocommerce, 'set_account_template' ], 10, 2 );
}, 1000);

Indeed, it worked. Thank you very much!