logo

Dodatni tipovi blokova (EBT) - Novo iskustvo rada sa Layout Builder-om❗

Dodatni tipovi blokova (EBT) – stilizovani, prilagodljivi tipovi blokova: slajdšouvi, kartice sa tabovima, kartice, akordeoni i mnogi drugi. Ugrađena podešavanja za pozadinu, DOM Box, javascript dodatke. Iskusite budućnost kreiranja rasporeda već danas.

Demo EBT moduli Preuzmite EBT module

❗Dodatni tipovi pasusa (EPT) – Novo iskustvo rada sa pasusima

Dodatni tipovi pasusa (EPT) – analogni skup modula zasnovan na pasusima.

Demo EPT moduli Preuzmite EPT module

Scroll
20/06/2025, by Ivan

Sada kada smo napravili placeholder za našu stranicu podešavanja modula, dodajmo link u meni. U sledećim instrukcijama prikazano je kako napraviti link u meniju za modul hello_world u sekciji „Razvoj“ na stranici „Administrator > Konfiguracija“ (http://example.com/admin/config).

U korenskom folderu vašeg modula napravite novi fajl pod imenom hello_world.links.menu.yml i dodajte sledeći sadržaj:

hello_world.admin:
  title: 'Podešavanja Hello modula'
  description: 'primer kako napraviti link ka administratorskoj stranici podešavanja'
  parent: system.admin_config_development
  route_name: hello_world.content
  weight: 100

Obratite pažnju da prva linija rezerviše imenski prostor, kao u našem primeru routing fajla. Takođe obratite pažnju na korišćenje imena rute u petom redu (koristimo imenski prostor iz prve linije routing fajla). Naslov i opis će biti prikazani u sekciji „Razvoj“. Obratite pažnju da linija parent određuje roditeljsku stavku u meniju. Drugim rečima, link će biti kreiran unutar admin > config > development.

Ovo će dodati link ka putanji definisanoj u hello_world.content (u ovom primeru u fajlu hello_world.routing.yml) na administratorskim stranicama vašeg sajta pod tabom „Konfiguracija“ (URL /admin/config) u sekciji „Razvoj“. Naravno, moraćete da obrišete keš da bi izmene stupile na snagu.

Nakon brisanja keša, pronaći ćete link „Podešavanja Hello modula“ u sekciji „Razvoj“ na stranici konfiguracije. Klikom na link pozvaće se modul hello_world.

Dodatni saveti

Fajl .links.menu.yml je prilično fleksibilan. Možete ga koristiti i za linkovanje ka eksternim resursima ili interne linkove, na primer:

hello_world.admin:
  title: 'Podešavanja Hello modula'
  description: 'primer kako napraviti link ka administratorskoj stranici podešavanja'
  parent: system.admin_config_development
  url: http://example.com/this-is-some-example
  weight: 100
hello_world.admin2:
  title: 'Podešavanja Hello modula'
  description: 'primer kako napraviti link ka administratorskoj stranici podešavanja'
  parent: system.admin_config_development
  url: internal:/some-internal-path

Nije moguće uređivati:

Napomena: kada kreirate linkove u meniju pomoću YAML fajlova i prilagođenih modula na ovaj način, dobijate nelagodljive linkove u korisničkom interfejsu menija. Linkove možete menjati samo kroz YAML fajl. Oni se smatraju kontrolisanim od strane modula, a ne administratorskim. Kada kliknete na dugme za uređivanje stavke menija, dobićete poruku „Ovaj link je obezbeđen modulom XXX. Naslov i putanja ne mogu biti uređivani“.

not-editable-menu-link

Da biste kreirali uređive linkove u meniju, potrebno je da to uradite otprilike ovako:

  $my_menu = \Drupal::entityTypeManager()->getStorage('menu_link_content')
    ->loadByProperties(['menu_name' => 'my-menu-name']);
  foreach ($my_menu as $menu_item) {
    $parent_id = $menu_item->getParentId();
    if (!empty($parent_id)) {
      $top_level = $parent_id;
      break;
    }
  }
  $menu_link = MenuLinkContent::create([
    'title' => 'Naslov mog linka u meniju',
    'link' => ['uri' => 'internal:/my/path'],
    'menu_name' => 'my-menu-name',
    'parent' => $top_level,
    'expanded' => TRUE,
    'weight' => 0,
  ]);
  $menu_link->save();
Source URL:

Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.