Jump to content

Add another data depth for submenu in main menu, navbar


waterman455

Recommended Posts

Salut tous le monde, je veux avoir dans ma menu un data-depth= 1 , dans ce cas la je peux avoir un pop-up affichant les sous catégories de mes catégories au niveau 2 , j'ai une capture ici qui montre que j'ai à ma menu  "PLUS" qui permet d'afficher d'autres catégories , je veux afficher les sous catégories de catégories afficher par plus à un autre popup (level 2) ,  Pour le "PLUS" dans ma menu j'ai inspecter et c'est lier à un code javascript dans my custom.js situé ci dissous

    $(document).ready(function () {

        let moreText = $('#_desktop_top_menu').data('more')

        if (!moreText) {

            'More'

        }

        if ($window.width() >= parseInt($mobile, 10)) {

            var max_elem = 6;

            if ($(window).width() < 1200) {

                max_elem = 5;

            }

            var items = $('#top-menu > li:not(.link)');

            var surplus = items.slice(max_elem, items.length);

            surplus.wrapAll('<li class="more_menu"><div class="popover sub-menu js-sub-menu">');

            $('.more_menu').prepend('<a href="#" id="more_asse" class="dropdown-item" data-depth="0">' + moreText + '</a>');

        } else {

            $("#top-menu > li:not(.link)").removeClass(".more_menu");

        }

    });   >

 

dans ps_mainmenu.tpl  c'est le code par default : 

  {**
 * 2007-2020 PrestaShop
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Academic Free License 3.0 (AFL-3.0)
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * https://opensource.org/licenses/AFL-3.0
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to [email protected] so we can send you a copy immediately.
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade PrestaShop to newer
 * versions in the future. If you wish to customize PrestaShop for your
 * needs please refer to http://www.prestashop.com for more information.
 *
 * @author    PrestaShop SA <[email protected]>
 * @copyright 2007-2020 PrestaShop SA
 * @license   https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
 * International Registered Trademark & Property of PrestaShop SA
 *}
{assign var=_counter value=0}
{function name="menu" nodes=[] depth=0 parent=null}
    {if $nodes|count}
      <ul class="top-menu clearfix" {if $depth == 0}id="top-menu"{/if} data-depth="{$depth}">
        {foreach from=$nodes item=node}
            <li class="{$node.type}{if $node.current} current {/if}" id="{$node.page_identifier}">
            {assign var=_counter value=$_counter+1}
              <a
                class="{if $depth >= 0}dropdown-item{/if}{if $depth === 1} dropdown-submenu{/if}"
                href="{$node.url}" data-depth="{$depth}"
                {if $node.open_in_new_window} target="_blank" {/if}
              >
                {if $node.children|count}
                  {* Cannot use page identifier as we can have the same page several times *}
                  {assign var=_expand_id value=10|mt_rand:100000}
                  <span class="float-xs-right hidden-lg-up">
                    <span data-target="#top_sub_menu_{$_expand_id}" data-toggle="collapse" class="navbar-toggler collapse-icons">
                      <i class="material-icons add">add</i>
                      <i class="material-icons remove">remove</i>
                    </span>
                  </span>
                {/if}
                {$node.label}
              </a>
              {if $node.children|count}
              <div {if $depth === 0} class="popover sub-menu js-sub-menu collapse"{else} class="collapse"{/if} id="top_sub_menu_{$_expand_id}">
                {menu nodes=$node.children depth=$node.depth parent=$node}
                {if $node.image_urls|count}
                  <div class="menu-images-container">
                    {foreach from=$node.image_urls item=image_url}
                      <img src="{$image_url}">
                    {/foreach}
                  </div>
                {/if}
              </div>
              {/if}
            </li>
        {/foreach}
      </ul>
    {/if}
{/function}

<div class="menu js-top-menu hidden-md-down" id="_desktop_top_menu" data-more={l s='more' d='Shop.Theme.Catalog'}>
    {menu nodes=$menu.children}
</div>
>

Merci pour votre attention , j'ai besoin d'aide , si vous avez une idée ou bien un conseil comment le faire sa me ferait plaisir merci beaucoup

image.png.c2ba9a6fb6d2939e52cacb9cfb3b9d71.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...