1. Dashboard
  2. Articles
  3. Forum
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • More Options
  1. webEdition Forum
  2. Forum
  3. Deutschsprachiges Support Forum
  4. webEdition Templates erstellen (we:tags)

ID übergeordneter Navigationspunkt

  • ...::: eSKa :::...
  • January 23, 2024 at 8:11 AM
1st Official Post
  • ...::: eSKa :::...
    Beginner
    Posts
    16
    • January 23, 2024 at 8:11 AM
    • #1

    moin,

    in älteren Projekten wurde mit getrennten Navigationen gearbeitet. Hier wurde die Ober- und die Unternavigation getrennt auf der Seite angezeigt. Somit kann die Unternavigation nicht automatisch auf die ID der übergeordneten Navigation zugreifen. In Projekten bis webEdition 8 wurde mit folgendem Code die ID ermittelt

    PHP
    <?php
    function getCurrentNavID($parent) {
    if (isset($GLOBALS['we_navigation'])) {
    $nav = $GLOBALS['we_navigation'][$parent]->items;
    } else {
    return null;
    }
    
    
    foreach ($nav AS $key => $value) {
    if (($value->text != '' && $value->level == 1) && !empty($value->current)) {
    return intval($value->id);
    }
    }
    
    
    return null;
    }
    
    
    ?>
    <?php $mainnavID = getCurrentNavID('default'); ?>
    Display More

    Dieser Code funktioniert in webEdition 9.2.2 (php 8.2.) leider nicht mehr. Hat sich da in der Struktur der Variablen etwas geändert?

    Ich konnte dazu zumindest nichts finden. Vielleicht hat ja jemand einen Tipp für mich. Bin für jeden Hinweis dankbar.

  • WBTMagnum
    Student
    Reactions Received
    11
    Posts
    140
    • January 23, 2024 at 1:00 PM
    • #2

    Hallo eSKa,

    Mir ist leider unklar, wie das im Gesamtkontext funktioniert. Woher kommt das $GLOBALS['we_navigation']?

    Grundsätzlich würde ich das mit einer zweiten Navigation lösen, die für die darüberliegenden Navigationsebenen keine Ausgabe erzeugt. Vielleicht ist das ja auch ein Ansatz für das Projekt.

    Liebe Grüße,

    Sascha

  • Online
    Finn
    Administrator
    Reactions Received
    10
    Posts
    261
    • January 23, 2024 at 6:12 PM
    • Official Post
    • #3

    Moin,

    die Navigation ist nicht mehr im Globalen Raum vorhanden. Da wurde glaube ich einiges raus genommen. (Was ja auch sinnvoll ist.).

    Wir du aktuell an die Parents kommst, ist eine gute Frage.

    https://www.wg-werbeagentur.de

    • Next Official Post
  • Online
    Finn
    Administrator
    Reactions Received
    10
    Posts
    261
    • January 23, 2024 at 6:13 PM
    • Official Post
    • #4
    Quote from WBTMagnum

    Hallo eSKa,

    Mir ist leider unklar, wie das im Gesamtkontext funktioniert. Woher kommt das $GLOBALS['we_navigation']?

    Grundsätzlich würde ich das mit einer zweiten Navigation lösen, die für die darüberliegenden Navigationsebenen keine Ausgabe erzeugt. Vielleicht ist das ja auch ein Ansatz für das Projekt.

    Liebe Grüße,

    Sascha

    Ich glaube in den alten WE Versionen konntest du im Globals Raum auf die Navigation zugreifen. Aber sicher bin ich mir nicht.

    https://www.wg-werbeagentur.de

    • Previous Official Post
  • schmitter
    Student
    Reactions Received
    6
    Posts
    61
    • January 24, 2024 at 3:26 PM
    • #5

    Ich weiß nicht, ob ichs richtig verstanden habe, aber damit bekommst du die ID der Unternavigation.

    Code
    <we:navigationEntry type="folder" navigationname="top_nav" level="1">
        <we:navigationField name="id" nameto="sub_nav_id" to="global" />
    </we:navigationEntry>

    Oder Parent Nav ID:

    Code
    <we:navigationEntry type="folder" navigationname="top_nav" level="1">
        <we:navigationField name="parentid" nameto="top_nav_id" to="global" />
    </we:navigationEntry>

    Edited once, last by schmitter (January 24, 2024 at 3:32 PM).

  • ...::: eSKa :::...
    Beginner
    Posts
    16
    • January 29, 2024 at 1:51 PM
    • #6

    ... erstmal vielen Dank für all eure Gedanken. Ja, dass man mit Globals nicht mehr an die Navigation kommt, habe ich fast befürchtet.

    schmitter
    Die we-interne Lösung werde ich aber mal testen. Das sieht auf den ersten Blick recht vielversprechend aus.

    Gruß
    eSKa

    Quote from schmitter
    Code
    <we:navigationEntry type="folder" navigationname="top_nav" level="1">
        <we:navigationField name="id" nameto="sub_nav_id" to="global" />
    </we:navigationEntry>

    Oder Parent Nav ID:

    Code
    <we:navigationEntry type="folder" navigationname="top_nav" level="1">
        <we:navigationField name="parentid" nameto="top_nav_id" to="global" />
    </we:navigationEntry>

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself Login

Donations

200.00 EUR

Donate now
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™