Как посчитать номер класса страницы, чтобы отобразить его в меню? - PullRequest
2 голосов
/ 26 марта 2020

У меня есть сайт Drupal 8.8.4 с темой Bootstrap 3.4.1

Я создал страницу просмотра магазина для отображения задач, которые должны выполнять продавцы.

На этом На странице каждая задача соответствует блоку просмотра:

  • Оранжевые блоки имеют класс «task-list-warning».

  • Красный блоки имеют класс «task-list-danger».

введите описание изображения здесь

Для отображения этой страницы есть ссылка на меню и Я добавил 2 значка:

  • С классом "Task-Badge-Warning".

  • С классом "Task-Badge-danger" .

Я хочу отобразить количество задач на странице, в значках ссылки меню:

  • Номер класса "task- list-warning "в" task-badge-warning ".

  • Номер класса" task-list-danger "в" task-badge-danger ".

введите описание изображения здесь

* 104 8 * Меню магазина представляет собой файл TWIG, содержащий следующий код:
<nav role="navigation" aria-labelledby="menu-page-boutique" id="menu-page-boutique" class="contextual-region">
  <ul class="nav navbar-nav m-0">
    <li class="dropdown">
      <a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="fas fa-plus-circle fa-lg"></i> Gérer votre {{ store_entity.type.entity.label }}</a>
      <ul class="dropdown-menu">
        <li class="task">
          <a href="/store/{{ store_entity.id }}/tasks" data-drupal-link-system-path="/store/{{ store_entity.id }}/tasks"><i class="fas fa-tasks fa-lg"></i> <b>Liste des tâches</b> <span class="badge badge-warning task-badge-warning">0</span> <span class="badge badge-danger task-badge-danger">0</span></a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/point-of-sale" data-drupal-link-system-path="/store/{{ store_entity.id }}/point-of-sale"><i class="fas fa-cash-register fa-lg"></i> Point de vente</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/migrate" data-drupal-link-system-path="/store/{{ store_entity.id }}/migrate"><i class="fas fa-exchange-alt  fa-lg"></i> Migrer</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}" data-drupal-link-system-path="/store/{{ store_entity.id }}"><i class="fas fa-glasses  fa-lg"></i> Voir</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/edit" data-drupal-link-system-path="/store/{{ store_entity.id }}/edit"><i class="fas fa-feather-alt fa-lg"></i> Modifier</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/delete" data-drupal-link-system-path="/store/{{ store_entity.id }}/delete"><i class="fas fa-trash-alt fa-lg"></i> Supprimer</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/translations" data-drupal-link-system-path="/store/{{ store_entity.id }}/translations"><i class="fas fa-globe fa-lg"></i> Traductions</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/members" data-drupal-link-system-path="/store/{{ store_entity.id }}/members"><i class="fas fa-sitemap fa-lg"></i> L'équipe</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/relationship" data-drupal-link-system-path="/store/{{ store_entity.id }}/relationship"><i class="fas fa-link  fa-lg"></i> Relations</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/products" data-drupal-link-system-path="/store/{{ store_entity.id }}/products"><i class="fas fa-gift  fa-lg"></i> Produits</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/promotions" data-drupal-link-system-path="/store/{{ store_entity.id }}/promotions"><i class="fas fa-percentage fa-lg"></i> Promotions</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/payment-gateways" data-drupal-link-system-path="/store/{{ store_entity.id }}/payment-gateways"><i class="fas fa-credit-card fa-lg"></i> Modes de paiement</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/shipping-methods" data-drupal-link-system-path="/store/{{ store_entity.id }}/shipping-methods"><i class="fas fa-truck fa-lg"></i> Modes de livraison</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/orders" data-drupal-link-system-path="/store/{{ store_entity.id }}/orders"><i class="fas fa-shopping-cart fa-lg"></i> Commandes</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/inventory" data-drupal-link-system-path="/store/{{ store_entity.id }}/inventory"><i class="fas fa-clipboard-list fa-lg"></i> Inventaire</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/reports" data-drupal-link-system-path="/store/{{ store_entity.id }}/reports"><i class="fas fa-calculator fa-lg"></i> Rapports de vente</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/like" data-drupal-link-system-path="/store/{{ store_entity.id }}/like"><i class="fas fa-heartbeat fa-lg"></i> Mentions j'aime</a>
        </li>
        <li>
          <a href="/store/{{ store_entity.id }}/seo" data-drupal-link-system-path="/store/{{ store_entity.id }}/seo"><i class="fas fa-flag-checkered fa-lg"></i> Référencement</a>
        </li>
      </ul>
    </li>
  </ul>
</nav>

Как я могу это сделать?

ПРОБЛЕМА

I запустил модуль для Drupal 8:

https://git.drupalcode.org/sandbox/zenimagine-3076032/tree/master

Работает только если я на странице задач. Но если я go перехожу на другую страницу, счетчик в меню не работает.

введите здесь описание изображения

Как отобразить счетчик задач на всех страницах где присутствует меню?

Меню отображается на всех страницах с URL:

https://www.example.com/fr/store/ID_STORE
https://www.example.com/en/store/ID_STORE
https://www.example.com/fr/store/ID_STORE/*
https://www.example.com/en/store/ID_STORE/*
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...