• Seite
  • Addon-API's

Spezielle Arrays

Stand: 09.12.2020 / 15:01:20

das cms verfügt über mehrere spezielle arrays, die erweiterbar sind und teilweise auch erweitert werden MÜSSEN, um neue funktionen zu implementieren. es gibt mehrere große kategorien, die nachfolgend aufgelistet sind
Wichtig!: alle gelisteten arrays sind assziativ. von daher bei der namensvergebung für neue elemente möglichst aussagekräftige und keine zu allgemeinen ausdrücke verwenden. am besten macht es sich, wenn die ausdrücke an das addon angepasst sind

  • allgemeines funktions-übergreifendes array:
    $$site_elements
  • arrays zum "neu-anmelden" von funktionen:
    (weitere details unter --> Funktionen <--)
    $$site_elements["interpreter"]
    $site_elements["special_interpreter"]
    $site_elements["output"]
    $site_elements["execute"]
  • arrays für die datei und speicherverwaltung: (weitere details unter --> Speicherung <--)
    $$data_cms
  • arrays für zusätzliche acp und usercp-seiten: (weitere details unter --> Menü-Erweiterung (ACP und UserCP) <--)
    $$data_cms["data_acp"]
    $data_cms["data_acp_descr"]
    $data_cms["data_acp_groups"]
    $data_cms["data_acp_denied"]
    $data_cms["data_usercp"]
    $data_cms["data_usercp_descr"]
    $data_cms["data_usercp_groups"]
    $data_cms["data_usercp_denied"]
  • arrays für die rechtevergabe: (weitere details unter --> ACP-Rechtevergabe <--)
    $$options["group_vars"]["grp_permissions"]
  • falls das addon "sitemap" (von mir) installiert ist: arrays für die sitemap:
    $$options["sitemap_forbidden"]
    die seiten, die in diesem array gelistet sind, werden nicht in der sitemap angezeigt. das array ist numerisch
  • arrays für optionen:
    $$options
    • gespeichert wird assoziativ
      --> beispiel mit "schalter" als zu speichernde variable und dem wert 1: $$options["schalter"] = 1;
    • zum abrufen der gespeicherten optionen MUSS das array $$site_elements["option"] verwendet werden
      --> beispiel mit zuvor gespeicherter variable "schalter": $$schalter = $site_elements["option"]["schalter"];
    • um eine option nur für den aktuellen seitenaufruf zu ändern, wird der wert in $$site_elements["option"] geändert:
      1. $schalter = 0;
      2. $site_elements["option"]["schalter"] = $schalter;
    • um eine option dauerhaft zu speichern (nach möglichkeit NUR für die SELBSTERSTELLTEN optionen verwenden!), muss die variable $$options global gemacht werden und dann wird mit set_siteoptions("", "set"); die variable abgespeichert. es erfolgt eine automatische speicherung in $$site_elements["option"].
      1. global $options;
      2. $schalter = 0;
      3. $options["schalter"] = $schalter;
      4. $gespeichert = set_siteoptions("", "set");
    • in der variable $$gespeichert (aus dem obigen beispiel) wird gespeichert ob der speichervorgang für die optionen erfolgreich war oder nicht
    • arrays können derzeit NICHT nachträglich geändert und gespeichert werden (außer über quelltext-änderung)
    $$options["option"]
    • in dieses array kann eine kurzbeschreibung der jeweiligen option gespeichert werden, die dann in der allgemeinen optionen-seite auftaucht. ein admin-user kann hier optionen nur ändern, wenn eine options-beschreibung vorliegt. über den quelltext kann allerdings auch ohne vorliegende options-beschreibung gespeichert werden (über set_siteoptions("", "set");)
    $$options["user_vars"]
    $options["group_vars"]
    $options["msg_vars"]
    $options["user_vars_denied"]
    $options["user_vars_profilehide"]
    • arrays für die festlegung der user-daten variablen und was darin gespeichert wird
      (weitere details unter --> User_arrays <--)
  • array für unveränderbare optionen:
    $$locked
    • kann auch über $$site_elements["locked"] abgerufen werden. nutzung analog zu $$options