App anlegen

Mit nur 1 Schritt angelegt

Gehen Sie in den Einstellungen in den "App Manager" und klicken dort auf "Neue App".

 

Füllen Sie dort die Felder entsprechend aus und klicken auf "create".

Der Aufbau

Der Aufbau einer App ist klar gegliedert:
/admin befinden sich alle Dateien, die Backend verwendet werden
/admin/css CSS Dateien für Backend
/admin/images Speicherort für Backend Bilder
/admin/tpl Smarty HTML Templates für die administrative Oberfläche im Backend
/css CSS Dateien für Frontend
/images Speicherort für Frontend Bilder
/setup alle Dateien wie z.B. Templates, die bei der Installation der App eingerichtet werden sollen.
/ PHP Dateien zur Steuerung des Frontends

 

 

 

Die config.xml Datei

Die config.xml definiert die App. Hier werden grundsätzliche Einstellungen vorgenommen, wie z.B. App Name, Versionsnummer, Event Ausführung. Hier ein Beispiel der Blog App:

<?xml version="1.0"?>
<config>
  <module>
    <settings>
      <module_name>Blog</module_name>
      <id>tcblog</id>
      <active>true</active>
      <version>1.1</version>
      <php>tcblog.inc</php>
      <hasperm>true</hasperm>
      <epage>tcblog.inc</epage>
      <epage_dir>MODULE_ROOT</epage_dir>
      <is_content_page>true</is_content_page>
      <developer_id>1</developer_id>
      <description>Der Trebaxa Blog erm&#xF6;glicht Ihnen nicht nur einzelne Nachrichten zu verfassen, sondern auch zeitlich gegliedert darzsutellen. Auch k&#xF6;nnen Kunden Beitr&#xE4;ge verfassen.</description>
    </settings>
    <events>
      <event eventname="cronjob" method="class" classname="tcblog_class" function="cronjob"/>
      <event eventname="autorun" method="class" classname="tcblog_class" function="autorun"/>
    </events>
    <includes>
      <include type="class" classname="tcblog_master_class">tcblog.master</include>
      <include type="class" classname="tcblog_class">tcblog</include>
    </includes>
    <admin_includes>
      <include type="class" classname="tcblog_admin_class">tcblog</include>
    </admin_includes>
    <admin_menu parent="96" icon="tcblog/admin/images/blog.png" label="Blog" query="cmd=load_items"/>
  </module>
</config>

Bedeutung:

module_name Der Name der App
id eine eindeutige ID der App. Die ID darf nur 1mal existieren und ist gleich mit dem App-Verzeichnis
active Schaltet App aktiv / inaktiv
version Die Version der App
php die ausführende PHP Datei, die vom CMS beim Seitenaufruf im Frontend ausgeführt wird
hasperm legt fest, ob die App bestimmte Berechtigung für Besucher zur Verfügung stellt. Defautl ist false.
epage legt die ausführende PHP Datei für das Backend fest
is_content_page Wenn aktiviert, wir die App als Seitentyp innerhalb des Seiteneditors zur Verfügung gestellt. So wird die App mit einer bestimmten Seite verknüpft.
developer_id Ihre Develper ID von Keimeno
description Die Beschreibung der App. Diese Beschreibung wird auch bei Keimeno veröffentlicht.
events hier können Sie bestimmten Aktionen definieren, die die App bei Events ausführen soll. Keimeno hat zahlreiche Events. Eine Liste von Events finden Sie in der Doku. So können Sie z.B. leicht einen Cronjob für Ihre App definieren. Das Attribute "classname" definiert den Namen der ausführenden Class, "eventname" definiert das Event (z.B. cronjob), "funtion" ist der Name der Funktion innerhalb der Class, die ausgeführt werden soll.
includes Includes ist ein wichtiger Bestandteil. Hier werden alle PHP Dateien definiert, die geladen werden sollen. Alle hier gelisteten Dateien werden im Backend und im Frontend geladen und stehen somit beiden Bereich zur Verfügung.
admin_includes Hier werden ausschließlich PHP Dateien gelistet, die das Backend benötigt. Im Frontend stehen diese Dateien nicht zur Verfügung.
admin_menu Hier der Eintrag im administraiven Menü definiert. Wir dieser Eintrag entfernt, entsteht auch kein Eintrag im Menü.