meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

show_blesta_navigation_on_certain_pages [2022/12/10 15:34] – created sgrafshow_blesta_navigation_on_certain_pages [2022/12/10 16:14] (current) sgraf
Line 1: Line 1:
-<markdown> </markdown>+====== Show the Blesta navigation on certain pages ====== 
 + 
 + 
 +<markdown>  
 + 
 + 
 +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 
 +            } 
 +          ?> 
 + 
 + 
 + 
 +</markdown>