Eigene Module im Admin-Bereich updatesicher verankern?

Thema wurde von Alwin Schulze, 7. Juli 2015 erstellt.

  1. Alwin Schulze

    Alwin Schulze Erfahrener Benutzer

    Registriert seit:
    26. September 2012
    Beiträge:
    48
    Danke erhalten:
    6
    Danke vergeben:
    20
    Hallo,

    ich will mal langsam wieder damit anfangen eigene Module, zu erstellen.
    Aber die nach jedem Update wieder neu zu integrieren ist aufwändig.

    Gibt es eine Möglichkeit die irgendwo (vielleicht in einem speziellen User-Bereich der linken Admin-Leiste) updatesicher zu verankern?
     
  2. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.549
    Danke erhalten:
    11.309
    Danke vergeben:
    1.612
    Meinst Du so:
    Unbenannt.JPG
     
  3. Alwin Schulze

    Alwin Schulze Erfahrener Benutzer

    Registriert seit:
    26. September 2012
    Beiträge:
    48
    Danke erhalten:
    6
    Danke vergeben:
    20
    Ja, genau so.
    Wie bekommen ich das hin, dass die nicht nach jedem Update wieder neu reingesetzt werden müssen.
     
  4. Anonymous

    Anonymous Erfahrener Benutzer
    Mitarbeiter

    Registriert seit:
    22. Juni 2011
    Beiträge:
    4.760
    Danke erhalten:
    1.749
    Danke vergeben:
    137
    Hallo,

    das ist eigentlich ziemlich simpel. Du musst nur eine XML-Datei in user_classes/conf/admin_menu anlegen, die deinen Menüeintrag beschreibt. Beispiele findest du in system/conf/admin_menu.
     
  5. Alwin Schulze

    Alwin Schulze Erfahrener Benutzer

    Registriert seit:
    26. September 2012
    Beiträge:
    48
    Danke erhalten:
    6
    Danke vergeben:
    20
    ich habe nun eine Datei "menu_eigene.xml" in dem Ordner angelegt.

    Code:
    <?xml version="1.0"?>
    <!-- {load_language_text section="admin_menu_eigene"} -->
    <admin_menu>
        <menugroup id="BOX_HEADING_EIGENE" sort="05" background="hilfsprogr1.png" title="{$txt.BOX_HEADING_EIGENE|escape}">
            <menuitem sort="1" link="filterzuordnung.php" title="{$txt.BOX_ADMIN_MENU_FILTERZUORDNUNG}" />
        </menugroup>
    </admin_menu>
    
    ich habe auch alle Caches gelöscht, aber sehen kann ich den Eintrag nicht.
    Liegt es evtl. an den Textdateien für die Bezeichnungen?
    Wo muss ich diese eintragen? (in der Datenbank --> language_phrases_cache, oder in einer language Datei)?
     
  6. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    35.549
    Danke erhalten:
    11.309
    Danke vergeben:
    1.612
    Schreibe die Titel im Reintext, dann brachst Du keine eigene Sprachdatei.

    Code:
    <?xml version="1.0"?>
    <!-- {load_language_text section="admin_menu"} -->
    
    <admin_menu>
       <menugroup id="BOX_HEADING_MEINE_MODULE" sort="1000" background="module.png" title="Meine Module">
                   <menuitem link="mailbeez.php" link_param="" sort="1" title="Mailbeez" />
           </menugroup>
    </admin_menu> 
     
  7. Anonymous

    Anonymous Erfahrener Benutzer
    Mitarbeiter

    Registriert seit:
    22. Juni 2011
    Beiträge:
    4.760
    Danke erhalten:
    1.749
    Danke vergeben:
    137
    Erstens, was barbara sagt. :) Zweitens musst du auch drauf achten, dass die passenden Einträge in der DB-Tabelle admin_access vorhanden sind. Menüeinträge zu Dateien, auf die der Benutzer nicht zugreifen darf, werden nicht angezeigt.
     
  8. Alwin Schulze

    Alwin Schulze Erfahrener Benutzer

    Registriert seit:
    26. September 2012
    Beiträge:
    48
    Danke erhalten:
    6
    Danke vergeben:
    20
    Muss ich dafür eine neue Zeile in der admin_access anlegen? Was bedeuten die Werte?
    0 - kein Zugriff
    1 - Zugriff
    >1 - ?
     
  9. Anonymous

    Anonymous Erfahrener Benutzer
    Mitarbeiter

    Registriert seit:
    22. Juni 2011
    Beiträge:
    4.760
    Danke erhalten:
    1.749
    Danke vergeben:
    137
    Zeile? Nein, du musst eine neue Spalte anlegen. Und dann bedeutet eine 1 in den Zeilen, dass der Zugriff erlaubt ist.
     
  10. soprao

    soprao Erfahrener Benutzer

    Registriert seit:
    26. Februar 2015
    Beiträge:
    160
    Danke erhalten:
    18
    Danke vergeben:
    28
    Gibt es auch die Möglichkeit, die Einträge unter einem vorhandenen Knoten zu machen? z.B. unter Bestellung? Diese Einträge sind ja in der gambio_menu.xml drin. Ein Overload via gambio_menu.xml mit meinem Eintrag funktioniert leider nicht.
     
  11. Anonymous

    Anonymous Erfahrener Benutzer
    Mitarbeiter

    Registriert seit:
    22. Juni 2011
    Beiträge:
    4.760
    Danke erhalten:
    1.749
    Danke vergeben:
    137
    Unter einem vorhandenen Blatt-Knoten wie „Bestellungen“? Nein. Aber unter einem Teilbereichsknoten wie „Kunden“ oder „Module“, das geht. Beispiel wäre system/conf/admin_menu/menu_intraship.xml.
     
  12. Dennis (MotivMonster.de)

    Dennis (MotivMonster.de) G-WARD 2013/14/15/16

    Registriert seit:
    22. September 2011
    Beiträge:
    31.172
    Danke erhalten:
    6.199
    Danke vergeben:
    1.104
    Beruf:
    Mann für alles :)
    Ort:
    Weilburg
    Einfach nach dem Schema eigene XML Datei dort ablegen. Machen viele externe Module schon.,
     
  13. Anonymous

    Anonymous Erfahrener Benutzer
    Mitarbeiter

    Registriert seit:
    22. Juni 2011
    Beiträge:
    4.760
    Danke erhalten:
    1.749
    Danke vergeben:
    137
    Nein, eigentlich nicht dort, sondern in user_classes/conf/admin_menu. :)
     
  14. Dennis (MotivMonster.de)

    Dennis (MotivMonster.de) G-WARD 2013/14/15/16

    Registriert seit:
    22. September 2011
    Beiträge:
    31.172
    Danke erhalten:
    6.199
    Danke vergeben:
    1.104
    Beruf:
    Mann für alles :)
    Ort:
    Weilburg
    Ach Stimm, hattet ihr ja auch mal ausgelagert. - Danke Marco.
     
  15. soprao

    soprao Erfahrener Benutzer

    Registriert seit:
    26. Februar 2015
    Beiträge:
    160
    Danke erhalten:
    18
    Danke vergeben:
    28
    #15 soprao, 5. September 2015
    Zuletzt bearbeitet: 9. September 2015
    Danke vielmals! Der Eintrag ist nun sichtbar.

    Allerdings stehe ich wieder auf dem Schlauch. Ich möchte mir nun auch so eine Box mit meinen Modulen einrichten. Die menu_custommodules.xml ist unter user_classes/conf/admin_menu/ abgelegt:

    PHP:
    <?xml version="1.0"?>
    <!-- {load_language_text section="admin_menu"} -->
    <admin_menu>
        <menugroup id="BOX_CUSTOM_MODULES" background="module.png" sort="15" title="{$txt.BOX_CUSTOM_MODULES|escape}">
            <menuitem sort="10" link_param="" link="orders_overview.php" title="Bestell&uumlbersicht" />
            <menuitem sort="20" link_param="" link="amazon_export.php" title="Amazon CSV Export" />
        </menugroup>
    </admin_menu>
    In der Datenbank habe ich die Einträge orders_overview und amazon_export gemacht und entsprechend auf 1 gesetzt. Cache für Module und Texte geleert, aber nichts.

    Interessant ist, dass wenn ich die Einträge unter der Box Kunden mache, dann erscheinen diese und sind auch aufrufbar. Baue ich einen Smarty-Fehler in meine xml ein ( ein "}" vergessen), liest er die Datei auch aus. Nur angezeigt wird nichts.

    Muss ich noch irgendwo was einfügen, setzen oder ähnliches?

    Danke und viele Grüße

    *push* Keiner eine Idee?