Tutorial Series Part-4 box.xml fehlt

  • Hallo,

    die box.xml ist zur Erzeugung von fertig konfigurierten Boxen und deshalb nicht notwendig. Über den registrierten Box-Controller kann der Administrator die Box auch manuell anlegen. Ein Beispiel wäre die „Wer war online“-Box, die erst kürzlich hier im Forum diskutiert wurde:

    Alexander Ebert
    May 19, 2023 at 9:26 PM
  • Okay, vielen Dank. Soweit verstanden. Ich habe noch zwei Fragen:

    1) Besteht die Möglichkeit vorzugeben, dass eine Box nur auf eine bestimmte Seite gesetzt werden darf? Meine erstellte Box macht beispielsweise nur Sinn für Lexikoneinträge. Derzeit löse ich es so in der Methode loadContent()

    Code
    if (!isset($_REQUEST['id']) || $_REQUEST['controller'] != 'entry') return;

    Damit wird die Box gar nicht erst ausgegeben, wenn es nicht der Controller entry ist.

    2) Die box.xml wird somit nur benötigt, wenn ich z. B. in einem Paket die Box bereits für den Benutzer anlegen möchte damit er dies nicht manuell über das ACP machen muss?

    Danke vorab.

  • Hallo,

    Meine erstellte Box macht beispielsweise nur Sinn für Lexikoneinträge.

    Das ist ein bisschen unspezifisch. Möglicherweise ist eine Box dann auch gar nicht das richtige, wenn die nur auf einer Seite etwas sinnvolles macht?

    2) Die box.xml wird somit nur benötigt, wenn ich z. B. in einem Paket die Box bereits für den Benutzer anlegen möchte damit er dies nicht manuell über das ACP machen muss?

    Ja, korrekt.

  • Das ist ein bisschen unspezifisch. Möglicherweise ist eine Box dann auch gar nicht das richtige, wenn die nur auf einer Seite etwas sinnvolles macht?

    Ich habe eine Box entwickelt, die Mitwirkende / Contributors anzeigt für Lexikon Einträge. Die macht natürlich nur Sinn, wenn man sich innerhalb eines Lexikon-Eintrags befindet.

  • dann wäre es wohl sinnvoller, dass du die über einen Template-Listener direkt in das passende Template integrierst.

    Hallo Tim,

    vielleicht kannst Du mir ganz kurz helfen:

    Ich finde im Template Entry vom Lexikon kein entsprechendes Event um die Sidebar zu bearbeiten. Gibt es möglicherweise eine Art "globales Event" für die Sidebar, bei der ich dann im Template-Listener ggf. nach der Applikation/Controller validieren kann, um den Inhalt nur für diese Seite zu laden/rendern? Oder muss ich mich an den Entwickler des Lexikons wenden? Ich würde die "Box" schon gerne in der Sidebar anzeigen und nicht irgendwo anders im Template.

Participate now!

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