Weiß ja nicht genau was daran ein Content Management System sein soll.
Vor allem schon vom perfomance technischen.... Defines sind langsam und der Code ist unübersichtlich.
Kommentare würde keinem schaden und ich find die "generatePage"-Funktion (?) echt interessant.
Also ich würde es keinem weiter empfehlen (erster Eindruck zählt). http://stackoverflow.com/questions/1244…g-global-in-php
#edit
Wie wäre es mit Design Pattern wie z.B. ORM, MVC, MVP, MVVM? Hättest wenigstens dann eine Übersicht..
Ahja, du solltest lieber mit namespaces arbeiten, sieht viel schöner aus, als wenn du immer require, include oder sonstiges nutzt.
Du könntest PSR-4 Autoloading von Composer nutzen (WICHTIG: Ich würde dir Composer ans Herz legen, viele kennen es aus der Szene nicht, aber es erfüllt seinen Zweck https://getcomposer.org/ - Composer ist ein Packet Manager wie z.B. npm für NodeJS).
#edit2
warum machst du bei deinen Querys immer SELECT *? Sowas macht man nicht, man nimmt nur die Daten raus, die man auch wirklich braucht...