Admin Menüeintrag bei GX-Modules - json oder xml?

Thema wurde von MJ, 13. September 2024 um 16:18 Uhr erstellt.

  1. MJ

    MJ Erfahrener Benutzer

    Registriert seit:
    28. April 2011
    Beiträge:
    537
    Danke erhalten:
    56
    Danke vergeben:
    97
    #1 MJ, 13. September 2024 um 16:18 Uhr
    Zuletzt bearbeitet: 17. September 2024 um 11:06 Uhr
    Guten Tag

    Ich bin mittlerweile wieder unsicher, wie eigene Menüeinträge im Adminbereich gemacht werden. Ist der aktuelle Stand nun mit xml oder json?

    Ich habe das gerade für mehrere Module im GX 4.9 versucht, aber es funktioniert nicht. Eventuell liegt es auch daran, dass ich mehrere Module in eine Kategorie bringen will.

    Bei diesem Tutorial wird XML vorgeschlagen - mich beschleicht jedoch das Gefühl, dass es trotz der 4.9.2.1 im URL etwas Altes ist.

    So hab ich es bisher gemacht, mit JSON:

    GXModules/Vendor/MyModA/ (fügt einen Eintrag in die menugroup hinzu)
    GXModules/Vendor/MyModB/ (das 'Haupt'-Modul erstellt auch die menugroup)
    GXModules/Vendor/MyModC/ (fügt einen Eintrag in die menugroup hinzu)

    Ich hab in jeden der Ordner einen eigenen Ordner 'Menu' mit einer modulname.menu.json mit folgenden Inhalten:

    mymoda.menu.json
    Code:
    [
        {
            "id": "BOX_VENDOR",
            "items": [
                {
                    "sort": 15,
                    "link": "page-modul-a",
                    "title": "My Modul A"
                }
            ]
        }
    ]
    mymodb.menu.json
    Code:
    [
        {
            "id": "BOX_VENDOR",
            "sort": 30,
            "class": "fa fa-heart",
            "title": "Vendor Box",
            "items": [
                {
                    "sort": 10,
                    "link": "page-modul-b1",
                    "title": "My Modul B-1"
                },
                {
                    "sort": 30,
                    "link": "page-modul-b2",
                    "title": "My Modul B-2"
                }
            ]
        }
    ]

    mymodc.menu.json
    Code:
    [
        {
            "id": "BOX_VENDOR",
            "items": [
                {
                    "sort": 20,
                    "link": "page-modul-c",
                    "title": "My Modul C"
                }
            ]
        }
    ]
    Der Block wird im Menü angezeigt, jedoch ganz unten am Ende und ohne den Header mit "Vendor Box" - der ist weiß und ohne Content (nur ein leeres <li></li>. Wo liegt der Fehler?

    PS: Mit zweien funktioniert es! Wenn ich das dritte, Modul C, hinzufügen will, schlägt es fehl.
    Ich habe hier bewusst die lang.files weggelassen für die Übersicht. Evtl. habe ich auch einen Fehler im Modul C - aber ich wollte dennoch mal nachfragen, wie ihr es macht.

    Mit XML ist es ähnlich, beim Hinzufügen des dritten verschwindet der Menüboxheader und alles wandert nach unten ans Ende des Menüs.

    Liebe Dank,
    Jens

    ---
    PS: Lösung hier


    -----
    Search tags: Adminmenü Admin-Menü Menüeintrag Menü-Eintrag
     
  2. Anonymous

    Anonymous Administrator
    Mitarbeiter

    Registriert seit:
    26. April 2011
    Beiträge:
    1.723
    Danke erhalten:
    1.312
    Danke vergeben:
    305
    Hast du denn Sprachdateien angelegt? Denn nicht übersetzbare Menüeinträge also wo die Sprachvariablen nicht aufgelöst werden können, werden nicht im Menü angezeigt. Das ist eine Konfiguration in den Einstellungen->Menüeintrage ohne Übersetzung", wenn die aktiv ist, dann werden auch Einträge angezeigt, wo die Übersetzung fehlt.
     
  3. MJ

    MJ Erfahrener Benutzer

    Registriert seit:
    28. April 2011
    Beiträge:
    537
    Danke erhalten:
    56
    Danke vergeben:
    97
    @Till (Gambio)

    Ja, das funktioniert alles. Ich hab es nur für die Fragestellung weg gelassen, um es einfach zu halten.

    Was empfehlt ihr denn, json oder xml? Oder ist das egal? Grundsätzlich klappt ja beides noch.
     
  4. Anonymous

    Anonymous Administrator
    Mitarbeiter

    Registriert seit:
    26. April 2011
    Beiträge:
    1.723
    Danke erhalten:
    1.312
    Danke vergeben:
    305
    immer JSON nutzen, die XML ist alt und wird nicht mehr weiterentwickelt. XML Menüeinträge werden in einer kommenden Version nicht mehr unterstützt.
     
  5. MJ

    MJ Erfahrener Benutzer

    Registriert seit:
    28. April 2011
    Beiträge:
    537
    Danke erhalten:
    56
    Danke vergeben:
    97
    #5 MJ, 17. September 2024 um 10:48 Uhr
    Zuletzt bearbeitet: 17. September 2024 um 11:06 Uhr
    Danke @Till (Gambio)

    Wenn es interessiert - falls jemand meine Frage oben überhaupt verstanden hat : )

    Es lag an der Lade-Reihenfolge der Module. Ich hatte Die 'Kategorie' erst in ModB initiiert, deshalb konnte ModA die ID gar nicht finden.

    Vielleicht hilft es dem Einen oder Anderen.
    Liebe Grüße und einen schönen Tag
     
  6. MJ

    MJ Erfahrener Benutzer

    Registriert seit:
    28. April 2011
    Beiträge:
    537
    Danke erhalten:
    56
    Danke vergeben:
    97
    @Till (Gambio)

    Nur nochmal als Ergänzung. Ob das nun Absicht ist oder nicht ..

    Im neuen Layout im Backend gibt es keine IDs mehr für die Menü-Kategorien. Die werden wohl beim parsen nicht mehr mit ausgegeben. Z. B. id="BOX_HEADING_ORDERS" etc

    Wir hatten oft benutzte Menüpunkte immer etwas hervorgehoben, um sie schneller zu finden. Das ist jetzt wieder etwas schwieriger. Die class aus der menu.json wandert ja ins icon. Man bekommt es mit CSS trotzdem gegriffen - ich fand es aber dennoch seltsam, dass die IDs verschwunden sind.