meta data for this page
Show the Blesta navigation on certain pages
So you would like to show the Blesta navigation so you don't need to incorporate it into your custom BlestaCMS Pro navigation, which is used for your template, we've all been there.
We use the following code and plenty of our Alpha testers have found it to work very well. This code only shows the Blesta navigation on the following pages:
https://yoursite.com/client/*
https://yoursite.com/client/login/
https://yoursite.com/client/reset/
https://yoursite.com/plugin/*
https://yoursite.com/order/*
The only page you may need to edit is the portal
link to your "return to portal" link.
<?php if (strpos($_SERVER['REQUEST_URI'], "client") && $page_title != "Log In" && $page_title != "Reset Password" && $page_title != "Forgot Username" && $page_title != "Forgot Username" || strpos($_SERVER['REQUEST_URI'], "plugin") || strpos($_SERVER['REQUEST_URI'], "order") !== false){ ?> <div class="nav-content" style="margin-bottom: 15px;"> <nav class="navbar navbar-expand-md navbar-dark"> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#main-navbar"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse pb-2 pb-md-0" id="main-navbar"> <div class="container-md flex-column flex-md-row align-items-start"> <?php $active_nav = null; ?> <ul class="navbar-nav"> <?php foreach ($this->Html->ifSet($nav, []) as $link => $value) { $attributes = ['class' => ['nav-item']]; $link_attributes = ['class' => ['nav-link']]; $dropdown = !empty($value['sub']); $active = false; if ($value['active']) { $active = true; $attributes['class'][] = 'active'; $active_nav = $value; } if ($dropdown) { $attributes['class'][] = 'dropdown'; $link_attributes['class'][] = 'dropdown-toggle'; $link_attributes['data-toggle'][] = 'dropdown'; // Set parent to active if child is if (!$active) { foreach ($this->Html->ifSet($value['sub'], []) as $sub_link => $sub_value) { if ($sub_value['active']) { $attributes['class'][] = 'active'; break; } } } } ?> <li<?php echo $this->Html->buildAttributes($attributes);?>> <a href="<?php $this->Html->_($link);?>"<?php echo $this->Html->buildAttributes($link_attributes);?>> <i class="<?php $this->Html->_($value['icon']);?>"></i> <?php $this->Html->_($value['name']); ?> </a> <?php if (!empty($value['sub'])) { ?> <div class="dropdown-menu"> <?php foreach ($this->Html->ifSet($value['sub'], []) as $sub_link => $sub_value) { ?> <a class="dropdown-item" href="<?php $this->Html->_($sub_link);?>"><i class="<?php $this->Html->_($sub_value['icon']);?>"></i> <?php $this->Html->_($sub_value['name']);?></a> <?php } ?> </div> <?php } ?> </li> <?php } ?> </ul> <ul class="navbar-nav"> <?php if ($this->Html->ifSet($logged_in)) { ?> <li class="nav-item dropdown"> <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown"> <?php $this->Html->_($contact->first_name);?> <?php $this->Html->_($contact->last_name);?> <b class="caret"></b> </a> <div class="dropdown-menu"> <a class="dropdown-item" href="<?php echo $this->Html->safe($this->client_uri . 'main/edit/');?>"><?php $this->_('AppController.client_structure.text_update_account');?></a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="//<?php echo $this->Html->safe($this->Html->ifSet($system_company->hostname));echo $this->Html->safe(WEBDIR); ?>portal"><?php $this->_('AppController.client_structure.text_return_to_portal');?></a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="<?php echo $this->Html->safe($this->client_uri . 'logout/');?>"><?php $this->_('AppController.client_structure.text_logout');?></a> </div> </li> <?php } else { ?> <li class="nav-item"> <a class="nav-link" href="<?php echo $this->Html->safe($this->client_uri . 'login/');?>"> <?php $this->_('AppController.client_structure.text_login');?> </a> </li> <?php } ?> </ul> </div> </div> </nav> </div> <?php } ?>